Skip to content

Instantly share code, notes, and snippets.

@aminechraibi
Forked from danielholanda/quickDraw.v
Last active April 17, 2019 21:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save aminechraibi/79bb6949378d7616c2587e1e78a8b87e to your computer and use it in GitHub Desktop.
Save aminechraibi/79bb6949378d7616c2587e1e78a8b87e to your computer and use it in GitHub Desktop.
LeFlow - Quick Draw Verilog File
// https://www.youtube.com/watch?v=eHeqenSj0VQ
// https://www.reddit.com/r/MachineLearning/comments/9yxzea/r_automatically_going_from_tensorflow_to_fpga/
// https://github.com/danielholanda/LeFlow
`define MEMORY_CONTROLLER_ADDR_SIZE 64
`define MEMORY_CONTROLLER_DATA_SIZE 64
// Number of RAM elements: 16
`define MEMORY_CONTROLLER_TAG_SIZE 9
// @param0 = internal global [5 x [5 x [1 x [8 x float]]]] zeroinitializer, align 8
`define TAG_g_param0 `MEMORY_CONTROLLER_TAG_SIZE'd17
`define TAG_g_param0_a {`TAG_g_param0, 55'd0}
// @param1 = internal global [1 x [28 x [28 x [1 x float]]]] zeroinitializer, align 8
`define TAG_g_param1 `MEMORY_CONTROLLER_TAG_SIZE'd16
`define TAG_g_param1_a {`TAG_g_param1, 55'd0}
// @param2 = internal global [8 x float] zeroinitializer, align 8
`define TAG_g_param2 `MEMORY_CONTROLLER_TAG_SIZE'd15
`define TAG_g_param2_a {`TAG_g_param2, 55'd0}
// @param3 = internal global [5 x [5 x [8 x [16 x float]]]] zeroinitializer, align 8
`define TAG_g_param3 `MEMORY_CONTROLLER_TAG_SIZE'd14
`define TAG_g_param3_a {`TAG_g_param3, 55'd0}
// @param4 = internal global [16 x float] zeroinitializer, align 8
`define TAG_g_param4 `MEMORY_CONTROLLER_TAG_SIZE'd13
`define TAG_g_param4_a {`TAG_g_param4, 55'd0}
// @param5 = internal global [784 x [10 x float]] zeroinitializer, align 8
`define TAG_g_param5 `MEMORY_CONTROLLER_TAG_SIZE'd12
`define TAG_g_param5_a {`TAG_g_param5, 55'd0}
// @param6 = internal global [10 x float] zeroinitializer, align 8
`define TAG_g_param6 `MEMORY_CONTROLLER_TAG_SIZE'd11
`define TAG_g_param6_a {`TAG_g_param6, 55'd0}
// @temp0 = internal unnamed_addr global [1 x [28 x [28 x [8 x float]]]] zeroinitializer, align 8
`define TAG_g_temp0 `MEMORY_CONTROLLER_TAG_SIZE'd10
`define TAG_g_temp0_a {`TAG_g_temp0, 55'd0}
// @temp1 = internal unnamed_addr global [1 x [28 x [28 x [8 x float]]]] zeroinitializer, align 8
`define TAG_g_temp1 `MEMORY_CONTROLLER_TAG_SIZE'd9
`define TAG_g_temp1_a {`TAG_g_temp1, 55'd0}
// @temp2 = internal unnamed_addr global [1 x [14 x [14 x [8 x float]]]] zeroinitializer, align 8
`define TAG_g_temp2 `MEMORY_CONTROLLER_TAG_SIZE'd8
`define TAG_g_temp2_a {`TAG_g_temp2, 55'd0}
// @temp3 = internal unnamed_addr global [1 x [14 x [14 x [16 x float]]]] zeroinitializer, align 8
`define TAG_g_temp3 `MEMORY_CONTROLLER_TAG_SIZE'd7
`define TAG_g_temp3_a {`TAG_g_temp3, 55'd0}
// @temp4 = internal unnamed_addr global [1 x [14 x [14 x [16 x float]]]] zeroinitializer, align 8
`define TAG_g_temp4 `MEMORY_CONTROLLER_TAG_SIZE'd6
`define TAG_g_temp4_a {`TAG_g_temp4, 55'd0}
// @temp5 = internal unnamed_addr global [1 x [7 x [7 x [16 x float]]]] zeroinitializer, align 8
`define TAG_g_temp5 `MEMORY_CONTROLLER_TAG_SIZE'd5
`define TAG_g_temp5_a {`TAG_g_temp5, 55'd0}
// @temp6 = internal unnamed_addr global [1 x [784 x float]] zeroinitializer, align 8
`define TAG_g_temp6 `MEMORY_CONTROLLER_TAG_SIZE'd4
`define TAG_g_temp6_a {`TAG_g_temp6, 55'd0}
// @temp7 = internal unnamed_addr global [1 x [10 x float]] zeroinitializer, align 8
`define TAG_g_temp7 `MEMORY_CONTROLLER_TAG_SIZE'd3
`define TAG_g_temp7_a {`TAG_g_temp7, 55'd0}
// @temp8 = internal global [10 x float] zeroinitializer, align 8
`define TAG_g_temp8 `MEMORY_CONTROLLER_TAG_SIZE'd2
`define TAG_g_temp8_a {`TAG_g_temp8, 55'd0}
// Turn off warning 'ignoring unsupported system task'
// altera message_off 10175
`timescale 1 ns / 1 ns
module top
(
clk,
reset,
start,
finish,
waitrequest,
return_val,
argmax_temp3,
screen_values_mem_addr,
screen_values_mem_in,
screen_values_mem_wen,
y_Q,
iRST_n,
);
input iRST_n;
input wire [3:0] y_Q;
input wire [9:0] screen_values_mem_addr;
input wire [31:0] screen_values_mem_in;
input wire screen_values_mem_wen;
output wire [3:0] argmax_temp3;
input clk;
input reset;
input start;
output wire finish;
input waitrequest;
output wire [31:0] return_val;
wire memory_controller_waitrequest;
wire memory_controller_enable_a;
wire [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] memory_controller_address_a;
wire memory_controller_write_enable_a;
wire [`MEMORY_CONTROLLER_DATA_SIZE-1:0] memory_controller_in_a;
wire [1:0] memory_controller_size_a;
wire [`MEMORY_CONTROLLER_DATA_SIZE-1:0] memory_controller_out_a;
wire memory_controller_enable_b;
wire [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] memory_controller_address_b;
wire memory_controller_write_enable_b;
wire [`MEMORY_CONTROLLER_DATA_SIZE-1:0] memory_controller_in_b;
wire [1:0] memory_controller_size_b;
wire [`MEMORY_CONTROLLER_DATA_SIZE-1:0] memory_controller_out_b;
/* synthesis translate_off */
assign memory_controller_waitrequest = waitrequest;
/* synthesis translate_on */
memory_controller memory_controller_inst (
.y_Q( y_Q ),
.screen_values_mem_addr(screen_values_mem_addr),
.screen_values_mem_in(screen_values_mem_in),
.screen_values_mem_wen(screen_values_mem_wen),
.clk( clk ),
.memory_controller_enable_a( memory_controller_enable_a ),
.memory_controller_enable_b( memory_controller_enable_b ),
.memory_controller_address_a( memory_controller_address_a ),
.memory_controller_address_b( memory_controller_address_b ),
.memory_controller_write_enable_a( memory_controller_write_enable_a ),
.memory_controller_write_enable_b( memory_controller_write_enable_b ),
.memory_controller_in_a( memory_controller_in_a ),
.memory_controller_in_b( memory_controller_in_b ),
.memory_controller_size_a( memory_controller_size_a ),
.memory_controller_size_b( memory_controller_size_b ),
.memory_controller_waitrequest( memory_controller_waitrequest ),
.memory_controller_out_reg_a( memory_controller_out_a ),
.memory_controller_out_reg_b( memory_controller_out_b ),
.argmax_temp3(argmax_temp3),
.iRST_n(iRST_n)
);
main main_inst(
.clk( clk ),
.clk2x( clk2x ),
.clk1x_follower( clk1x_follower ),
.reset( reset ),
.start( start ),
.finish( finish ),
.return_val( return_val ),
.memory_controller_waitrequest(memory_controller_waitrequest),
.memory_controller_enable_a(memory_controller_enable_a),
.memory_controller_address_a(memory_controller_address_a),
.memory_controller_write_enable_a(memory_controller_write_enable_a),
.memory_controller_in_a(memory_controller_in_a),
.memory_controller_size_a(memory_controller_size_a),
.memory_controller_out_a(memory_controller_out_a),
.memory_controller_enable_b(memory_controller_enable_b),
.memory_controller_address_b(memory_controller_address_b),
.memory_controller_write_enable_b(memory_controller_write_enable_b),
.memory_controller_in_b(memory_controller_in_b),
.memory_controller_size_b(memory_controller_size_b),
.memory_controller_out_b(memory_controller_out_b)
);
endmodule
`timescale 1 ns / 1 ns
module memory_controller
(
y_Q,
screen_values_mem_addr,
screen_values_mem_in,
screen_values_mem_wen,
clk,
memory_controller_address_a,
memory_controller_address_b,
memory_controller_enable_a,
memory_controller_enable_b,
memory_controller_write_enable_a,
memory_controller_write_enable_b,
memory_controller_in_a,
memory_controller_in_b,
memory_controller_size_a,
memory_controller_size_b,
memory_controller_waitrequest,
memory_controller_out_reg_a,
memory_controller_out_reg_b,
argmax_temp3,
iRST_n
);
input iRST_n;
output reg [3:0] argmax_temp3;
parameter latency = 2;
parameter ram_latency = latency-1;
integer j;
input [3:0] y_Q;
input [9:0] screen_values_mem_addr;
input [31:0] screen_values_mem_in;
input screen_values_mem_wen;
input clk;
input memory_controller_waitrequest;
input [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] memory_controller_address_a;
input memory_controller_enable_a;
input memory_controller_write_enable_a;
input [64-1:0] memory_controller_in_a;
input [1:0] memory_controller_size_a;
output reg [64-1:0] memory_controller_out_reg_a;
reg [64-1:0] memory_controller_out_prev_a;
reg [64-1:0] memory_controller_out_a;
reg memory_controller_enable_reg_a;
input [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] memory_controller_address_b;
input memory_controller_enable_b;
input memory_controller_write_enable_b;
input [64-1:0] memory_controller_in_b;
input [1:0] memory_controller_size_b;
output reg [64-1:0] memory_controller_out_reg_b;
reg [64-1:0] memory_controller_out_prev_b;
reg [64-1:0] memory_controller_out_b;
reg memory_controller_enable_reg_b;
reg [3:0] temp8_address_a;
reg [3:0] temp8_address_b;
reg temp8_write_enable_a;
reg temp8_write_enable_b;
reg [31:0] temp8_in_a;
reg [31:0] temp8_in_b;
wire [31:0] temp8_out_a;
wire [31:0] temp8_out_b;
// @temp8 = internal global [10 x float] zeroinitializer, align 8
ram_dual_port temp8 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( temp8_address_a ),
.address_b( temp8_address_b ),
.wren_a( temp8_write_enable_a ),
.wren_b( temp8_write_enable_b ),
.data_a( temp8_in_a ),
.data_b( temp8_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( temp8_out_a ),
.q_b( temp8_out_b)
);
defparam temp8.width_a = 32;
defparam temp8.width_b = 32;
defparam temp8.widthad_a = 4;
defparam temp8.widthad_b = 4;
defparam temp8.width_be_a = 1;
defparam temp8.width_be_b = 1;
defparam temp8.numwords_a = 10;
defparam temp8.numwords_b = 10;
defparam temp8.latency = ram_latency;
defparam temp8.init_file = "temp8.mif";
reg [3:0] temp7_address_a;
reg [3:0] temp7_address_b;
reg temp7_write_enable_a;
reg temp7_write_enable_b;
reg [31:0] temp7_in_a;
reg [31:0] temp7_in_b;
wire [31:0] temp7_out_a;
wire [31:0] temp7_out_b;
// @temp7 = internal unnamed_addr global [1 x [10 x float]] zeroinitializer, align 8
ram_dual_port temp7 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( temp7_address_a ),
.address_b( temp7_address_b ),
.wren_a( temp7_write_enable_a ),
.wren_b( temp7_write_enable_b ),
.data_a( temp7_in_a ),
.data_b( temp7_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( temp7_out_a ),
.q_b( temp7_out_b)
);
defparam temp7.width_a = 32;
defparam temp7.width_b = 32;
defparam temp7.widthad_a = 4;
defparam temp7.widthad_b = 4;
defparam temp7.width_be_a = 1;
defparam temp7.width_be_b = 1;
defparam temp7.numwords_a = 10;
defparam temp7.numwords_b = 10;
defparam temp7.latency = ram_latency;
defparam temp7.init_file = "temp7.mif";
reg [9:0] temp6_address_a;
reg [9:0] temp6_address_b;
reg temp6_write_enable_a;
reg temp6_write_enable_b;
reg [31:0] temp6_in_a;
reg [31:0] temp6_in_b;
wire [31:0] temp6_out_a;
wire [31:0] temp6_out_b;
// @temp6 = internal unnamed_addr global [1 x [784 x float]] zeroinitializer, align 8
ram_dual_port temp6 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( temp6_address_a ),
.address_b( temp6_address_b ),
.wren_a( temp6_write_enable_a ),
.wren_b( temp6_write_enable_b ),
.data_a( temp6_in_a ),
.data_b( temp6_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( temp6_out_a ),
.q_b( temp6_out_b)
);
defparam temp6.width_a = 32;
defparam temp6.width_b = 32;
defparam temp6.widthad_a = 10;
defparam temp6.widthad_b = 10;
defparam temp6.width_be_a = 1;
defparam temp6.width_be_b = 1;
defparam temp6.numwords_a = 784;
defparam temp6.numwords_b = 784;
defparam temp6.latency = ram_latency;
defparam temp6.init_file = "temp6.mif";
reg [9:0] temp5_address_a;
reg [9:0] temp5_address_b;
reg temp5_write_enable_a;
reg temp5_write_enable_b;
reg [31:0] temp5_in_a;
reg [31:0] temp5_in_b;
wire [31:0] temp5_out_a;
wire [31:0] temp5_out_b;
// @temp5 = internal unnamed_addr global [1 x [7 x [7 x [16 x float]]]] zeroinitializer, align 8
ram_dual_port temp5 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( temp5_address_a ),
.address_b( temp5_address_b ),
.wren_a( temp5_write_enable_a ),
.wren_b( temp5_write_enable_b ),
.data_a( temp5_in_a ),
.data_b( temp5_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( temp5_out_a ),
.q_b( temp5_out_b)
);
defparam temp5.width_a = 32;
defparam temp5.width_b = 32;
defparam temp5.widthad_a = 10;
defparam temp5.widthad_b = 10;
defparam temp5.width_be_a = 1;
defparam temp5.width_be_b = 1;
defparam temp5.numwords_a = 784;
defparam temp5.numwords_b = 784;
defparam temp5.latency = ram_latency;
defparam temp5.init_file = "temp5.mif";
reg [11:0] temp4_address_a;
reg [11:0] temp4_address_b;
reg temp4_write_enable_a;
reg temp4_write_enable_b;
reg [31:0] temp4_in_a;
reg [31:0] temp4_in_b;
wire [31:0] temp4_out_a;
wire [31:0] temp4_out_b;
// @temp4 = internal unnamed_addr global [1 x [14 x [14 x [16 x float]]]] zeroinitializer, align 8
ram_dual_port temp4 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( temp4_address_a ),
.address_b( temp4_address_b ),
.wren_a( temp4_write_enable_a ),
.wren_b( temp4_write_enable_b ),
.data_a( temp4_in_a ),
.data_b( temp4_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( temp4_out_a ),
.q_b( temp4_out_b)
);
defparam temp4.width_a = 32;
defparam temp4.width_b = 32;
defparam temp4.widthad_a = 12;
defparam temp4.widthad_b = 12;
defparam temp4.width_be_a = 1;
defparam temp4.width_be_b = 1;
defparam temp4.numwords_a = 3136;
defparam temp4.numwords_b = 3136;
defparam temp4.latency = ram_latency;
defparam temp4.init_file = "temp4.mif";
reg [11:0] temp3_address_a;
reg [11:0] temp3_address_b;
reg temp3_write_enable_a;
reg temp3_write_enable_b;
reg [31:0] temp3_in_a;
reg [31:0] temp3_in_b;
wire [31:0] temp3_out_a;
wire [31:0] temp3_out_b;
// @temp3 = internal unnamed_addr global [1 x [14 x [14 x [16 x float]]]] zeroinitializer, align 8
ram_dual_port temp3 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( temp3_address_a ),
.address_b( temp3_address_b ),
.wren_a( temp3_write_enable_a ),
.wren_b( temp3_write_enable_b ),
.data_a( temp3_in_a ),
.data_b( temp3_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( temp3_out_a ),
.q_b( temp3_out_b)
);
defparam temp3.width_a = 32;
defparam temp3.width_b = 32;
defparam temp3.widthad_a = 12;
defparam temp3.widthad_b = 12;
defparam temp3.width_be_a = 1;
defparam temp3.width_be_b = 1;
defparam temp3.numwords_a = 3136;
defparam temp3.numwords_b = 3136;
defparam temp3.latency = ram_latency;
defparam temp3.init_file = "temp3.mif";
reg [10:0] temp2_address_a;
reg [10:0] temp2_address_b;
reg temp2_write_enable_a;
reg temp2_write_enable_b;
reg [31:0] temp2_in_a;
reg [31:0] temp2_in_b;
wire [31:0] temp2_out_a;
wire [31:0] temp2_out_b;
// @temp2 = internal unnamed_addr global [1 x [14 x [14 x [8 x float]]]] zeroinitializer, align 8
ram_dual_port temp2 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( temp2_address_a ),
.address_b( temp2_address_b ),
.wren_a( temp2_write_enable_a ),
.wren_b( temp2_write_enable_b ),
.data_a( temp2_in_a ),
.data_b( temp2_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( temp2_out_a ),
.q_b( temp2_out_b)
);
defparam temp2.width_a = 32;
defparam temp2.width_b = 32;
defparam temp2.widthad_a = 11;
defparam temp2.widthad_b = 11;
defparam temp2.width_be_a = 1;
defparam temp2.width_be_b = 1;
defparam temp2.numwords_a = 1568;
defparam temp2.numwords_b = 1568;
defparam temp2.latency = ram_latency;
defparam temp2.init_file = "temp2.mif";
reg [12:0] temp1_address_a;
reg [12:0] temp1_address_b;
reg temp1_write_enable_a;
reg temp1_write_enable_b;
reg [31:0] temp1_in_a;
reg [31:0] temp1_in_b;
wire [31:0] temp1_out_a;
wire [31:0] temp1_out_b;
// @temp1 = internal unnamed_addr global [1 x [28 x [28 x [8 x float]]]] zeroinitializer, align 8
ram_dual_port temp1 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( temp1_address_a ),
.address_b( temp1_address_b ),
.wren_a( temp1_write_enable_a ),
.wren_b( temp1_write_enable_b ),
.data_a( temp1_in_a ),
.data_b( temp1_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( temp1_out_a ),
.q_b( temp1_out_b)
);
defparam temp1.width_a = 32;
defparam temp1.width_b = 32;
defparam temp1.widthad_a = 13;
defparam temp1.widthad_b = 13;
defparam temp1.width_be_a = 1;
defparam temp1.width_be_b = 1;
defparam temp1.numwords_a = 6272;
defparam temp1.numwords_b = 6272;
defparam temp1.latency = ram_latency;
defparam temp1.init_file = "temp1.mif";
reg [12:0] temp0_address_a;
reg [12:0] temp0_address_b;
reg temp0_write_enable_a;
reg temp0_write_enable_b;
reg [31:0] temp0_in_a;
reg [31:0] temp0_in_b;
wire [31:0] temp0_out_a;
wire [31:0] temp0_out_b;
// @temp0 = internal unnamed_addr global [1 x [28 x [28 x [8 x float]]]] zeroinitializer, align 8
ram_dual_port temp0 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( temp0_address_a ),
.address_b( temp0_address_b ),
.wren_a( temp0_write_enable_a ),
.wren_b( temp0_write_enable_b ),
.data_a( temp0_in_a ),
.data_b( temp0_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( temp0_out_a ),
.q_b( temp0_out_b)
);
defparam temp0.width_a = 32;
defparam temp0.width_b = 32;
defparam temp0.widthad_a = 13;
defparam temp0.widthad_b = 13;
defparam temp0.width_be_a = 1;
defparam temp0.width_be_b = 1;
defparam temp0.numwords_a = 6272;
defparam temp0.numwords_b = 6272;
defparam temp0.latency = ram_latency;
defparam temp0.init_file = "temp0.mif";
reg [3:0] param6_address_a;
reg [3:0] param6_address_b;
reg param6_write_enable_a;
reg param6_write_enable_b;
reg [31:0] param6_in_a;
reg [31:0] param6_in_b;
wire [31:0] param6_out_a;
wire [31:0] param6_out_b;
// @param6 = internal global [10 x float] zeroinitializer, align 8
ram_dual_port param6 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( param6_address_a ),
.address_b( param6_address_b ),
.wren_a( param6_write_enable_a ),
.wren_b( param6_write_enable_b ),
.data_a( param6_in_a ),
.data_b( param6_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( param6_out_a ),
.q_b( param6_out_b)
);
defparam param6.width_a = 32;
defparam param6.width_b = 32;
defparam param6.widthad_a = 4;
defparam param6.widthad_b = 4;
defparam param6.width_be_a = 1;
defparam param6.width_be_b = 1;
defparam param6.numwords_a = 10;
defparam param6.numwords_b = 10;
defparam param6.latency = ram_latency;
defparam param6.init_file = "param6.mif";
reg [12:0] param5_address_a;
reg [12:0] param5_address_b;
reg param5_write_enable_a;
reg param5_write_enable_b;
reg [31:0] param5_in_a;
reg [31:0] param5_in_b;
wire [31:0] param5_out_a;
wire [31:0] param5_out_b;
// @param5 = internal global [784 x [10 x float]] zeroinitializer, align 8
ram_dual_port param5 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( param5_address_a ),
.address_b( param5_address_b ),
.wren_a( param5_write_enable_a ),
.wren_b( param5_write_enable_b ),
.data_a( param5_in_a ),
.data_b( param5_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( param5_out_a ),
.q_b( param5_out_b)
);
defparam param5.width_a = 32;
defparam param5.width_b = 32;
defparam param5.widthad_a = 13;
defparam param5.widthad_b = 13;
defparam param5.width_be_a = 1;
defparam param5.width_be_b = 1;
defparam param5.numwords_a = 7840;
defparam param5.numwords_b = 7840;
defparam param5.latency = ram_latency;
defparam param5.init_file = "param5.mif";
reg [3:0] param4_address_a;
reg [3:0] param4_address_b;
reg param4_write_enable_a;
reg param4_write_enable_b;
reg [31:0] param4_in_a;
reg [31:0] param4_in_b;
wire [31:0] param4_out_a;
wire [31:0] param4_out_b;
// @param4 = internal global [16 x float] zeroinitializer, align 8
ram_dual_port param4 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( param4_address_a ),
.address_b( param4_address_b ),
.wren_a( param4_write_enable_a ),
.wren_b( param4_write_enable_b ),
.data_a( param4_in_a ),
.data_b( param4_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( param4_out_a ),
.q_b( param4_out_b)
);
defparam param4.width_a = 32;
defparam param4.width_b = 32;
defparam param4.widthad_a = 4;
defparam param4.widthad_b = 4;
defparam param4.width_be_a = 1;
defparam param4.width_be_b = 1;
defparam param4.numwords_a = 16;
defparam param4.numwords_b = 16;
defparam param4.latency = ram_latency;
defparam param4.init_file = "param4.mif";
reg [11:0] param3_address_a;
reg [11:0] param3_address_b;
reg param3_write_enable_a;
reg param3_write_enable_b;
reg [31:0] param3_in_a;
reg [31:0] param3_in_b;
wire [31:0] param3_out_a;
wire [31:0] param3_out_b;
// @param3 = internal global [5 x [5 x [8 x [16 x float]]]] zeroinitializer, align 8
ram_dual_port param3 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( param3_address_a ),
.address_b( param3_address_b ),
.wren_a( param3_write_enable_a ),
.wren_b( param3_write_enable_b ),
.data_a( param3_in_a ),
.data_b( param3_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( param3_out_a ),
.q_b( param3_out_b)
);
defparam param3.width_a = 32;
defparam param3.width_b = 32;
defparam param3.widthad_a = 12;
defparam param3.widthad_b = 12;
defparam param3.width_be_a = 1;
defparam param3.width_be_b = 1;
defparam param3.numwords_a = 3200;
defparam param3.numwords_b = 3200;
defparam param3.latency = ram_latency;
defparam param3.init_file = "param3.mif";
reg [2:0] param2_address_a;
reg [2:0] param2_address_b;
reg param2_write_enable_a;
reg param2_write_enable_b;
reg [31:0] param2_in_a;
reg [31:0] param2_in_b;
wire [31:0] param2_out_a;
wire [31:0] param2_out_b;
// @param2 = internal global [8 x float] zeroinitializer, align 8
ram_dual_port param2 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( param2_address_a ),
.address_b( param2_address_b ),
.wren_a( param2_write_enable_a ),
.wren_b( param2_write_enable_b ),
.data_a( param2_in_a ),
.data_b( param2_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( param2_out_a ),
.q_b( param2_out_b)
);
defparam param2.width_a = 32;
defparam param2.width_b = 32;
defparam param2.widthad_a = 3;
defparam param2.widthad_b = 3;
defparam param2.width_be_a = 1;
defparam param2.width_be_b = 1;
defparam param2.numwords_a = 8;
defparam param2.numwords_b = 8;
defparam param2.latency = ram_latency;
defparam param2.init_file = "param2.mif";
reg [9:0] param1_address_a;
reg [9:0] param1_address_b;
reg param1_write_enable_a;
reg param1_write_enable_b;
reg [31:0] param1_in_a;
reg [31:0] param1_in_b;
wire [31:0] param1_out_a;
wire [31:0] param1_out_b;
// @param1 = internal global [1 x [28 x [28 x [1 x float]]]] zeroinitializer, align 8
ram_dual_port param1 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( param1_address_a ),
.address_b( param1_address_b ),
.wren_a( param1_write_enable_a ),
.wren_b( param1_write_enable_b ),
.data_a( param1_in_a ),
.data_b( param1_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( param1_out_a ),
.q_b( param1_out_b)
);
defparam param1.width_a = 32;
defparam param1.width_b = 32;
defparam param1.widthad_a = 10;
defparam param1.widthad_b = 10;
defparam param1.width_be_a = 1;
defparam param1.width_be_b = 1;
defparam param1.numwords_a = 784;
defparam param1.numwords_b = 784;
defparam param1.latency = ram_latency;
defparam param1.init_file = "param1.mif";
reg [7:0] param0_address_a;
reg [7:0] param0_address_b;
reg param0_write_enable_a;
reg param0_write_enable_b;
reg [31:0] param0_in_a;
reg [31:0] param0_in_b;
wire [31:0] param0_out_a;
wire [31:0] param0_out_b;
// @param0 = internal global [5 x [5 x [1 x [8 x float]]]] zeroinitializer, align 8
ram_dual_port param0 (
.clk( clk ),
.clken( !memory_controller_waitrequest ),
.address_a( param0_address_a ),
.address_b( param0_address_b ),
.wren_a( param0_write_enable_a ),
.wren_b( param0_write_enable_b ),
.data_a( param0_in_a ),
.data_b( param0_in_b ),
.byteena_a( 1'b1 ),
.byteena_b( 1'b1 ),
.q_a( param0_out_a ),
.q_b( param0_out_b)
);
defparam param0.width_a = 32;
defparam param0.width_b = 32;
defparam param0.widthad_a = 8;
defparam param0.widthad_b = 8;
defparam param0.width_be_a = 1;
defparam param0.width_be_b = 1;
defparam param0.numwords_a = 200;
defparam param0.numwords_b = 200;
defparam param0.latency = ram_latency;
defparam param0.init_file = "param0.mif";
wire [`MEMORY_CONTROLLER_TAG_SIZE-1:0] tag_a;
assign tag_a = memory_controller_address_a[`MEMORY_CONTROLLER_ADDR_SIZE-1:`MEMORY_CONTROLLER_ADDR_SIZE-`MEMORY_CONTROLLER_TAG_SIZE];
reg [2:0] prevAddr_a;
reg [1:0] prevSize_a;
reg [2:0] prevSize_a_and;
always @(posedge clk)
if (!memory_controller_waitrequest)
begin
prevAddr_a <= memory_controller_address_a[2:0];
prevSize_a <= memory_controller_size_a;
end
wire [`MEMORY_CONTROLLER_TAG_SIZE-1:0] tag_b;
assign tag_b = memory_controller_address_b[`MEMORY_CONTROLLER_ADDR_SIZE-1:`MEMORY_CONTROLLER_ADDR_SIZE-`MEMORY_CONTROLLER_TAG_SIZE];
reg [2:0] prevAddr_b;
reg [1:0] prevSize_b;
reg [2:0] prevSize_b_and;
always @(posedge clk)
if (!memory_controller_waitrequest)
begin
prevAddr_b <= memory_controller_address_b[2:0];
prevSize_b <= memory_controller_size_b;
end
reg [2:0] select_not_struct_a;
wire select_temp8_a;
assign select_temp8_a = (tag_a == `TAG_g_temp8);
reg [ram_latency:0] select_temp8_reg_a;
wire [31:0] memory_controller_temp8_out_a;
assign memory_controller_temp8_out_a = {32{ select_temp8_reg_a[ram_latency]}} & temp8_out_a;
wire select_temp7_a;
assign select_temp7_a = (tag_a == `TAG_g_temp7);
reg [ram_latency:0] select_temp7_reg_a;
wire [31:0] memory_controller_temp7_out_a;
assign memory_controller_temp7_out_a = {32{ select_temp7_reg_a[ram_latency]}} & temp7_out_a;
wire select_temp6_a;
assign select_temp6_a = (tag_a == `TAG_g_temp6);
reg [ram_latency:0] select_temp6_reg_a;
wire [31:0] memory_controller_temp6_out_a;
assign memory_controller_temp6_out_a = {32{ select_temp6_reg_a[ram_latency]}} & temp6_out_a;
wire select_temp5_a;
assign select_temp5_a = (tag_a == `TAG_g_temp5);
reg [ram_latency:0] select_temp5_reg_a;
wire [31:0] memory_controller_temp5_out_a;
assign memory_controller_temp5_out_a = {32{ select_temp5_reg_a[ram_latency]}} & temp5_out_a;
wire select_temp4_a;
assign select_temp4_a = (tag_a == `TAG_g_temp4);
reg [ram_latency:0] select_temp4_reg_a;
wire [31:0] memory_controller_temp4_out_a;
assign memory_controller_temp4_out_a = {32{ select_temp4_reg_a[ram_latency]}} & temp4_out_a;
wire select_temp3_a;
assign select_temp3_a = (tag_a == `TAG_g_temp3);
reg [ram_latency:0] select_temp3_reg_a;
wire [31:0] memory_controller_temp3_out_a;
assign memory_controller_temp3_out_a = {32{ select_temp3_reg_a[ram_latency]}} & temp3_out_a;
wire select_temp2_a;
assign select_temp2_a = (tag_a == `TAG_g_temp2);
reg [ram_latency:0] select_temp2_reg_a;
wire [31:0] memory_controller_temp2_out_a;
assign memory_controller_temp2_out_a = {32{ select_temp2_reg_a[ram_latency]}} & temp2_out_a;
wire select_temp1_a;
assign select_temp1_a = (tag_a == `TAG_g_temp1);
reg [ram_latency:0] select_temp1_reg_a;
wire [31:0] memory_controller_temp1_out_a;
assign memory_controller_temp1_out_a = {32{ select_temp1_reg_a[ram_latency]}} & temp1_out_a;
wire select_temp0_a;
assign select_temp0_a = (tag_a == `TAG_g_temp0);
reg [ram_latency:0] select_temp0_reg_a;
wire [31:0] memory_controller_temp0_out_a;
assign memory_controller_temp0_out_a = {32{ select_temp0_reg_a[ram_latency]}} & temp0_out_a;
wire select_param6_a;
assign select_param6_a = (tag_a == `TAG_g_param6);
reg [ram_latency:0] select_param6_reg_a;
wire [31:0] memory_controller_param6_out_a;
assign memory_controller_param6_out_a = {32{ select_param6_reg_a[ram_latency]}} & param6_out_a;
wire select_param5_a;
assign select_param5_a = (tag_a == `TAG_g_param5);
reg [ram_latency:0] select_param5_reg_a;
wire [31:0] memory_controller_param5_out_a;
assign memory_controller_param5_out_a = {32{ select_param5_reg_a[ram_latency]}} & param5_out_a;
wire select_param4_a;
assign select_param4_a = (tag_a == `TAG_g_param4);
reg [ram_latency:0] select_param4_reg_a;
wire [31:0] memory_controller_param4_out_a;
assign memory_controller_param4_out_a = {32{ select_param4_reg_a[ram_latency]}} & param4_out_a;
wire select_param3_a;
assign select_param3_a = (tag_a == `TAG_g_param3);
reg [ram_latency:0] select_param3_reg_a;
wire [31:0] memory_controller_param3_out_a;
assign memory_controller_param3_out_a = {32{ select_param3_reg_a[ram_latency]}} & param3_out_a;
wire select_param2_a;
assign select_param2_a = (tag_a == `TAG_g_param2);
reg [ram_latency:0] select_param2_reg_a;
wire [31:0] memory_controller_param2_out_a;
assign memory_controller_param2_out_a = {32{ select_param2_reg_a[ram_latency]}} & param2_out_a;
wire select_param1_a;
assign select_param1_a = (tag_a == `TAG_g_param1);
reg [ram_latency:0] select_param1_reg_a;
wire [31:0] memory_controller_param1_out_a;
assign memory_controller_param1_out_a = {32{ select_param1_reg_a[ram_latency]}} & param1_out_a;
wire select_param0_a;
assign select_param0_a = (tag_a == `TAG_g_param0);
reg [ram_latency:0] select_param0_reg_a;
wire [31:0] memory_controller_param0_out_a;
assign memory_controller_param0_out_a = {32{ select_param0_reg_a[ram_latency]}} & param0_out_a;
reg [3:0] largest_addr_temp3_a = 4'b0000;
reg [31:0] largest_val_temp3_a = 32'b00000000000000000000000000000000;
reg [3:0] largest_addr_temp3_b = 4'b0000;
reg [31:0] largest_val_temp3_b = 32'b00000000000000000000000000000000;
reg [3:0] largest_addr_temp3 = 4'b0000;
always @(posedge clk)
begin
if (y_Q[2]) // This means that we are done with the classification
begin
largest_addr_temp3 <= largest_addr_temp3;
argmax_temp3 <= largest_addr_temp3;
largest_addr_temp3_a <= 4'b0000;
largest_val_temp3_a <= 32'b00000000000000000000000000000000;
largest_addr_temp3_b <= 4'b0000;
largest_val_temp3_b <= 32'b00000000000000000000000000000000;
//largest_addr_temp3 <= 4'b0000;
end
else begin
argmax_temp3 <= argmax_temp3;
if (( temp8_write_enable_a && temp8_in_a[31]==0 )) begin
if (( temp8_in_a > largest_val_temp3_a )) begin
largest_val_temp3_a <= temp8_in_a;
largest_addr_temp3_a <= temp8_address_a;
end
end
if (( temp8_write_enable_b && temp8_in_b[31]==0)) begin
if (( temp8_in_b > largest_val_temp3_b )) begin
largest_val_temp3_b <= temp8_in_b;
largest_addr_temp3_b <= temp8_address_b;
end
end
if (( largest_val_temp3_b> largest_val_temp3_a)) begin
largest_addr_temp3 <= largest_addr_temp3_b;
end
else begin
largest_addr_temp3 <= largest_addr_temp3_a;
end
end
end
always @(*)
begin
temp8_address_a = memory_controller_address_a [4-1+2:2] & {4{select_temp8_a}};
temp8_write_enable_a = memory_controller_write_enable_a & select_temp8_a;
temp8_in_a [32-1:0] = memory_controller_in_a[32-1:0];
temp7_address_a = memory_controller_address_a [4-1+2:2] & {4{select_temp7_a}};
temp7_write_enable_a = memory_controller_write_enable_a & select_temp7_a;
temp7_in_a [32-1:0] = memory_controller_in_a[32-1:0];
temp6_address_a = memory_controller_address_a [10-1+2:2] & {10{select_temp6_a}};
temp6_write_enable_a = memory_controller_write_enable_a & select_temp6_a;
temp6_in_a [32-1:0] = memory_controller_in_a[32-1:0];
temp5_address_a = memory_controller_address_a [10-1+2:2] & {10{select_temp5_a}};
temp5_write_enable_a = memory_controller_write_enable_a & select_temp5_a;
temp5_in_a [32-1:0] = memory_controller_in_a[32-1:0];
temp4_address_a = memory_controller_address_a [12-1+2:2] & {12{select_temp4_a}};
temp4_write_enable_a = memory_controller_write_enable_a & select_temp4_a;
temp4_in_a [32-1:0] = memory_controller_in_a[32-1:0];
temp3_address_a = memory_controller_address_a [12-1+2:2] & {12{select_temp3_a}};
temp3_write_enable_a = memory_controller_write_enable_a & select_temp3_a;
temp3_in_a [32-1:0] = memory_controller_in_a[32-1:0];
temp2_address_a = memory_controller_address_a [11-1+2:2] & {11{select_temp2_a}};
temp2_write_enable_a = memory_controller_write_enable_a & select_temp2_a;
temp2_in_a [32-1:0] = memory_controller_in_a[32-1:0];
temp1_address_a = memory_controller_address_a [13-1+2:2] & {13{select_temp1_a}};
temp1_write_enable_a = memory_controller_write_enable_a & select_temp1_a;
temp1_in_a [32-1:0] = memory_controller_in_a[32-1:0];
temp0_address_a = memory_controller_address_a [13-1+2:2] & {13{select_temp0_a}};
temp0_write_enable_a = memory_controller_write_enable_a & select_temp0_a;
temp0_in_a [32-1:0] = memory_controller_in_a[32-1:0];
param6_address_a = memory_controller_address_a [4-1+2:2] & {4{select_param6_a}};
param6_write_enable_a = memory_controller_write_enable_a & select_param6_a;
param6_in_a [32-1:0] = memory_controller_in_a[32-1:0];
param5_address_a = memory_controller_address_a [13-1+2:2] & {13{select_param5_a}};
param5_write_enable_a = memory_controller_write_enable_a & select_param5_a;
param5_in_a [32-1:0] = memory_controller_in_a[32-1:0];
param4_address_a = memory_controller_address_a [4-1+2:2] & {4{select_param4_a}};
param4_write_enable_a = memory_controller_write_enable_a & select_param4_a;
param4_in_a [32-1:0] = memory_controller_in_a[32-1:0];
param3_address_a = memory_controller_address_a [12-1+2:2] & {12{select_param3_a}};
param3_write_enable_a = memory_controller_write_enable_a & select_param3_a;
param3_in_a [32-1:0] = memory_controller_in_a[32-1:0];
param2_address_a = memory_controller_address_a [3-1+2:2] & {3{select_param2_a}};
param2_write_enable_a = memory_controller_write_enable_a & select_param2_a;
param2_in_a [32-1:0] = memory_controller_in_a[32-1:0];
if (!y_Q[2]) begin
param1_address_a = memory_controller_address_a [10-1+2:2] & {10{select_param1_a}};
param1_write_enable_a = memory_controller_write_enable_a & select_param1_a;
param1_in_a [32-1:0] = memory_controller_in_a[32-1:0];
end
else begin
param1_address_a = screen_values_mem_addr;
param1_write_enable_a = screen_values_mem_wen;
param1_in_a [31:0] = screen_values_mem_in;
end
param0_address_a = memory_controller_address_a [8-1+2:2] & {8{select_param0_a}};
param0_write_enable_a = memory_controller_write_enable_a & select_param0_a;
param0_in_a [32-1:0] = memory_controller_in_a[32-1:0];
end
always @(*)
begin
select_not_struct_a [2:0] = 3'b0 | {2{select_temp8_reg_a[ram_latency]}} | {2{select_temp7_reg_a[ram_latency]}} | {2{select_temp6_reg_a[ram_latency]}} | {2{select_temp5_reg_a[ram_latency]}} | {2{select_temp4_reg_a[ram_latency]}} | {2{select_temp3_reg_a[ram_latency]}} | {2{select_temp2_reg_a[ram_latency]}} | {2{select_temp1_reg_a[ram_latency]}} | {2{select_temp0_reg_a[ram_latency]}} | {2{select_param6_reg_a[ram_latency]}} | {2{select_param5_reg_a[ram_latency]}} | {2{select_param4_reg_a[ram_latency]}} | {2{select_param3_reg_a[ram_latency]}} | {2{select_param2_reg_a[ram_latency]}} | {2{select_param1_reg_a[ram_latency]}} | {2{select_param0_reg_a[ram_latency]}};
if (prevAddr_a[2:0] & select_not_struct_a[2:0] != 0 && memory_controller_enable_a)
begin
$display("Error: memory address not aligned to ram word size!");
$finish;
end
prevSize_a_and[0] = prevSize_a[1] | prevSize_a[0];
prevSize_a_and[1] = prevSize_a[1];
prevSize_a_and[2] = prevSize_a[1] & prevSize_a[0];
if ((prevAddr_a & prevSize_a_and) != 0 && memory_controller_enable_a)
begin
$display("Error: memory address not aligned to ram word size!");
$finish;
end
memory_controller_out_prev_a = memory_controller_out_reg_a & { 64{!memory_controller_enable_reg_a}};
memory_controller_out_a = 1'b0 | memory_controller_out_prev_a | memory_controller_temp8_out_a | memory_controller_temp7_out_a | memory_controller_temp6_out_a | memory_controller_temp5_out_a | memory_controller_temp4_out_a | memory_controller_temp3_out_a | memory_controller_temp2_out_a | memory_controller_temp1_out_a | memory_controller_temp0_out_a | memory_controller_param6_out_a | memory_controller_param5_out_a | memory_controller_param4_out_a | memory_controller_param3_out_a | memory_controller_param2_out_a | memory_controller_param1_out_a | memory_controller_param0_out_a;
end
always @(posedge clk)
if (!memory_controller_waitrequest)
begin
memory_controller_out_reg_a <= memory_controller_out_a;
memory_controller_enable_reg_a <= memory_controller_enable_a;
end
always @(posedge clk)
if (!memory_controller_waitrequest)
for (j = 0; j < ram_latency; j=j+1)
begin
select_temp8_reg_a[j+1] <= select_temp8_reg_a[j];
select_temp7_reg_a[j+1] <= select_temp7_reg_a[j];
select_temp6_reg_a[j+1] <= select_temp6_reg_a[j];
select_temp5_reg_a[j+1] <= select_temp5_reg_a[j];
select_temp4_reg_a[j+1] <= select_temp4_reg_a[j];
select_temp3_reg_a[j+1] <= select_temp3_reg_a[j];
select_temp2_reg_a[j+1] <= select_temp2_reg_a[j];
select_temp1_reg_a[j+1] <= select_temp1_reg_a[j];
select_temp0_reg_a[j+1] <= select_temp0_reg_a[j];
select_param6_reg_a[j+1] <= select_param6_reg_a[j];
select_param5_reg_a[j+1] <= select_param5_reg_a[j];
select_param4_reg_a[j+1] <= select_param4_reg_a[j];
select_param3_reg_a[j+1] <= select_param3_reg_a[j];
select_param2_reg_a[j+1] <= select_param2_reg_a[j];
select_param1_reg_a[j+1] <= select_param1_reg_a[j];
select_param0_reg_a[j+1] <= select_param0_reg_a[j];
end
always @(*)
begin
select_temp8_reg_a[0] <= select_temp8_a;
select_temp7_reg_a[0] <= select_temp7_a;
select_temp6_reg_a[0] <= select_temp6_a;
select_temp5_reg_a[0] <= select_temp5_a;
select_temp4_reg_a[0] <= select_temp4_a;
select_temp3_reg_a[0] <= select_temp3_a;
select_temp2_reg_a[0] <= select_temp2_a;
select_temp1_reg_a[0] <= select_temp1_a;
select_temp0_reg_a[0] <= select_temp0_a;
select_param6_reg_a[0] <= select_param6_a;
select_param5_reg_a[0] <= select_param5_a;
select_param4_reg_a[0] <= select_param4_a;
select_param3_reg_a[0] <= select_param3_a;
select_param2_reg_a[0] <= select_param2_a;
select_param1_reg_a[0] <= select_param1_a;
select_param0_reg_a[0] <= select_param0_a;
end
reg [2:0] select_not_struct_b;
wire select_temp8_b;
assign select_temp8_b = (tag_b == `TAG_g_temp8);
reg [ram_latency:0] select_temp8_reg_b;
wire [31:0] memory_controller_temp8_out_b;
assign memory_controller_temp8_out_b = {32{ select_temp8_reg_b[ram_latency]}} & temp8_out_b;
wire select_temp7_b;
assign select_temp7_b = (tag_b == `TAG_g_temp7);
reg [ram_latency:0] select_temp7_reg_b;
wire [31:0] memory_controller_temp7_out_b;
assign memory_controller_temp7_out_b = {32{ select_temp7_reg_b[ram_latency]}} & temp7_out_b;
wire select_temp6_b;
assign select_temp6_b = (tag_b == `TAG_g_temp6);
reg [ram_latency:0] select_temp6_reg_b;
wire [31:0] memory_controller_temp6_out_b;
assign memory_controller_temp6_out_b = {32{ select_temp6_reg_b[ram_latency]}} & temp6_out_b;
wire select_temp5_b;
assign select_temp5_b = (tag_b == `TAG_g_temp5);
reg [ram_latency:0] select_temp5_reg_b;
wire [31:0] memory_controller_temp5_out_b;
assign memory_controller_temp5_out_b = {32{ select_temp5_reg_b[ram_latency]}} & temp5_out_b;
wire select_temp4_b;
assign select_temp4_b = (tag_b == `TAG_g_temp4);
reg [ram_latency:0] select_temp4_reg_b;
wire [31:0] memory_controller_temp4_out_b;
assign memory_controller_temp4_out_b = {32{ select_temp4_reg_b[ram_latency]}} & temp4_out_b;
wire select_temp3_b;
assign select_temp3_b = (tag_b == `TAG_g_temp3);
reg [ram_latency:0] select_temp3_reg_b;
wire [31:0] memory_controller_temp3_out_b;
assign memory_controller_temp3_out_b = {32{ select_temp3_reg_b[ram_latency]}} & temp3_out_b;
wire select_temp2_b;
assign select_temp2_b = (tag_b == `TAG_g_temp2);
reg [ram_latency:0] select_temp2_reg_b;
wire [31:0] memory_controller_temp2_out_b;
assign memory_controller_temp2_out_b = {32{ select_temp2_reg_b[ram_latency]}} & temp2_out_b;
wire select_temp1_b;
assign select_temp1_b = (tag_b == `TAG_g_temp1);
reg [ram_latency:0] select_temp1_reg_b;
wire [31:0] memory_controller_temp1_out_b;
assign memory_controller_temp1_out_b = {32{ select_temp1_reg_b[ram_latency]}} & temp1_out_b;
wire select_temp0_b;
assign select_temp0_b = (tag_b == `TAG_g_temp0);
reg [ram_latency:0] select_temp0_reg_b;
wire [31:0] memory_controller_temp0_out_b;
assign memory_controller_temp0_out_b = {32{ select_temp0_reg_b[ram_latency]}} & temp0_out_b;
wire select_param6_b;
assign select_param6_b = (tag_b == `TAG_g_param6);
reg [ram_latency:0] select_param6_reg_b;
wire [31:0] memory_controller_param6_out_b;
assign memory_controller_param6_out_b = {32{ select_param6_reg_b[ram_latency]}} & param6_out_b;
wire select_param5_b;
assign select_param5_b = (tag_b == `TAG_g_param5);
reg [ram_latency:0] select_param5_reg_b;
wire [31:0] memory_controller_param5_out_b;
assign memory_controller_param5_out_b = {32{ select_param5_reg_b[ram_latency]}} & param5_out_b;
wire select_param4_b;
assign select_param4_b = (tag_b == `TAG_g_param4);
reg [ram_latency:0] select_param4_reg_b;
wire [31:0] memory_controller_param4_out_b;
assign memory_controller_param4_out_b = {32{ select_param4_reg_b[ram_latency]}} & param4_out_b;
wire select_param3_b;
assign select_param3_b = (tag_b == `TAG_g_param3);
reg [ram_latency:0] select_param3_reg_b;
wire [31:0] memory_controller_param3_out_b;
assign memory_controller_param3_out_b = {32{ select_param3_reg_b[ram_latency]}} & param3_out_b;
wire select_param2_b;
assign select_param2_b = (tag_b == `TAG_g_param2);
reg [ram_latency:0] select_param2_reg_b;
wire [31:0] memory_controller_param2_out_b;
assign memory_controller_param2_out_b = {32{ select_param2_reg_b[ram_latency]}} & param2_out_b;
wire select_param1_b;
assign select_param1_b = (tag_b == `TAG_g_param1);
reg [ram_latency:0] select_param1_reg_b;
wire [31:0] memory_controller_param1_out_b;
assign memory_controller_param1_out_b = {32{ select_param1_reg_b[ram_latency]}} & param1_out_b;
wire select_param0_b;
assign select_param0_b = (tag_b == `TAG_g_param0);
reg [ram_latency:0] select_param0_reg_b;
wire [31:0] memory_controller_param0_out_b;
assign memory_controller_param0_out_b = {32{ select_param0_reg_b[ram_latency]}} & param0_out_b;
always @(*)
begin
temp8_address_b = memory_controller_address_b [4-1+2:2] & {4{select_temp8_b}};
temp8_write_enable_b = memory_controller_write_enable_b & select_temp8_b;
temp8_in_b [32-1:0] = memory_controller_in_b[32-1:0];
temp7_address_b = memory_controller_address_b [4-1+2:2] & {4{select_temp7_b}};
temp7_write_enable_b = memory_controller_write_enable_b & select_temp7_b;
temp7_in_b [32-1:0] = memory_controller_in_b[32-1:0];
temp6_address_b = memory_controller_address_b [10-1+2:2] & {10{select_temp6_b}};
temp6_write_enable_b = memory_controller_write_enable_b & select_temp6_b;
temp6_in_b [32-1:0] = memory_controller_in_b[32-1:0];
temp5_address_b = memory_controller_address_b [10-1+2:2] & {10{select_temp5_b}};
temp5_write_enable_b = memory_controller_write_enable_b & select_temp5_b;
temp5_in_b [32-1:0] = memory_controller_in_b[32-1:0];
temp4_address_b = memory_controller_address_b [12-1+2:2] & {12{select_temp4_b}};
temp4_write_enable_b = memory_controller_write_enable_b & select_temp4_b;
temp4_in_b [32-1:0] = memory_controller_in_b[32-1:0];
temp3_address_b = memory_controller_address_b [12-1+2:2] & {12{select_temp3_b}};
temp3_write_enable_b = memory_controller_write_enable_b & select_temp3_b;
temp3_in_b [32-1:0] = memory_controller_in_b[32-1:0];
temp2_address_b = memory_controller_address_b [11-1+2:2] & {11{select_temp2_b}};
temp2_write_enable_b = memory_controller_write_enable_b & select_temp2_b;
temp2_in_b [32-1:0] = memory_controller_in_b[32-1:0];
temp1_address_b = memory_controller_address_b [13-1+2:2] & {13{select_temp1_b}};
temp1_write_enable_b = memory_controller_write_enable_b & select_temp1_b;
temp1_in_b [32-1:0] = memory_controller_in_b[32-1:0];
temp0_address_b = memory_controller_address_b [13-1+2:2] & {13{select_temp0_b}};
temp0_write_enable_b = memory_controller_write_enable_b & select_temp0_b;
temp0_in_b [32-1:0] = memory_controller_in_b[32-1:0];
param6_address_b = memory_controller_address_b [4-1+2:2] & {4{select_param6_b}};
param6_write_enable_b = memory_controller_write_enable_b & select_param6_b;
param6_in_b [32-1:0] = memory_controller_in_b[32-1:0];
param5_address_b = memory_controller_address_b [13-1+2:2] & {13{select_param5_b}};
param5_write_enable_b = memory_controller_write_enable_b & select_param5_b;
param5_in_b [32-1:0] = memory_controller_in_b[32-1:0];
param4_address_b = memory_controller_address_b [4-1+2:2] & {4{select_param4_b}};
param4_write_enable_b = memory_controller_write_enable_b & select_param4_b;
param4_in_b [32-1:0] = memory_controller_in_b[32-1:0];
param3_address_b = memory_controller_address_b [12-1+2:2] & {12{select_param3_b}};
param3_write_enable_b = memory_controller_write_enable_b & select_param3_b;
param3_in_b [32-1:0] = memory_controller_in_b[32-1:0];
param2_address_b = memory_controller_address_b [3-1+2:2] & {3{select_param2_b}};
param2_write_enable_b = memory_controller_write_enable_b & select_param2_b;
param2_in_b [32-1:0] = memory_controller_in_b[32-1:0];
param1_address_b = memory_controller_address_b [10-1+2:2] & {10{select_param1_b}};
param1_write_enable_b = memory_controller_write_enable_b & select_param1_b;
param1_in_b [32-1:0] = memory_controller_in_b[32-1:0];
param0_address_b = memory_controller_address_b [8-1+2:2] & {8{select_param0_b}};
param0_write_enable_b = memory_controller_write_enable_b & select_param0_b;
param0_in_b [32-1:0] = memory_controller_in_b[32-1:0];
end
always @(*)
begin
select_not_struct_b [2:0] = 3'b0 | {2{select_temp8_reg_b[ram_latency]}} | {2{select_temp7_reg_b[ram_latency]}} | {2{select_temp6_reg_b[ram_latency]}} | {2{select_temp5_reg_b[ram_latency]}} | {2{select_temp4_reg_b[ram_latency]}} | {2{select_temp3_reg_b[ram_latency]}} | {2{select_temp2_reg_b[ram_latency]}} | {2{select_temp1_reg_b[ram_latency]}} | {2{select_temp0_reg_b[ram_latency]}} | {2{select_param6_reg_b[ram_latency]}} | {2{select_param5_reg_b[ram_latency]}} | {2{select_param4_reg_b[ram_latency]}} | {2{select_param3_reg_b[ram_latency]}} | {2{select_param2_reg_b[ram_latency]}} | {2{select_param1_reg_b[ram_latency]}} | {2{select_param0_reg_b[ram_latency]}};
if (prevAddr_b[2:0] & select_not_struct_b[2:0] != 0 && memory_controller_enable_b)
begin
$display("Error: memory address not aligned to ram word size!");
$finish;
end
prevSize_b_and[0] = prevSize_b[1] | prevSize_b[0];
prevSize_b_and[1] = prevSize_b[1];
prevSize_b_and[2] = prevSize_b[1] & prevSize_b[0];
if ((prevAddr_b & prevSize_b_and) != 0 && memory_controller_enable_b)
begin
$display("Error: memory address not aligned to ram word size!");
$finish;
end
memory_controller_out_prev_b = memory_controller_out_reg_b & { 64{!memory_controller_enable_reg_b}};
memory_controller_out_b = 1'b0 | memory_controller_out_prev_b | memory_controller_temp8_out_b | memory_controller_temp7_out_b | memory_controller_temp6_out_b | memory_controller_temp5_out_b | memory_controller_temp4_out_b | memory_controller_temp3_out_b | memory_controller_temp2_out_b | memory_controller_temp1_out_b | memory_controller_temp0_out_b | memory_controller_param6_out_b | memory_controller_param5_out_b | memory_controller_param4_out_b | memory_controller_param3_out_b | memory_controller_param2_out_b | memory_controller_param1_out_b | memory_controller_param0_out_b;
end
always @(posedge clk)
if (!memory_controller_waitrequest)
begin
memory_controller_out_reg_b <= memory_controller_out_b;
memory_controller_enable_reg_b <= memory_controller_enable_b;
end
always @(posedge clk)
if (!memory_controller_waitrequest)
for (j = 0; j < ram_latency; j=j+1)
begin
select_temp8_reg_b[j+1] <= select_temp8_reg_b[j];
select_temp7_reg_b[j+1] <= select_temp7_reg_b[j];
select_temp6_reg_b[j+1] <= select_temp6_reg_b[j];
select_temp5_reg_b[j+1] <= select_temp5_reg_b[j];
select_temp4_reg_b[j+1] <= select_temp4_reg_b[j];
select_temp3_reg_b[j+1] <= select_temp3_reg_b[j];
select_temp2_reg_b[j+1] <= select_temp2_reg_b[j];
select_temp1_reg_b[j+1] <= select_temp1_reg_b[j];
select_temp0_reg_b[j+1] <= select_temp0_reg_b[j];
select_param6_reg_b[j+1] <= select_param6_reg_b[j];
select_param5_reg_b[j+1] <= select_param5_reg_b[j];
select_param4_reg_b[j+1] <= select_param4_reg_b[j];
select_param3_reg_b[j+1] <= select_param3_reg_b[j];
select_param2_reg_b[j+1] <= select_param2_reg_b[j];
select_param1_reg_b[j+1] <= select_param1_reg_b[j];
select_param0_reg_b[j+1] <= select_param0_reg_b[j];
end
always @(*)
begin
select_temp8_reg_b[0] <= select_temp8_b;
select_temp7_reg_b[0] <= select_temp7_b;
select_temp6_reg_b[0] <= select_temp6_b;
select_temp5_reg_b[0] <= select_temp5_b;
select_temp4_reg_b[0] <= select_temp4_b;
select_temp3_reg_b[0] <= select_temp3_b;
select_temp2_reg_b[0] <= select_temp2_b;
select_temp1_reg_b[0] <= select_temp1_b;
select_temp0_reg_b[0] <= select_temp0_b;
select_param6_reg_b[0] <= select_param6_b;
select_param5_reg_b[0] <= select_param5_b;
select_param4_reg_b[0] <= select_param4_b;
select_param3_reg_b[0] <= select_param3_b;
select_param2_reg_b[0] <= select_param2_b;
select_param1_reg_b[0] <= select_param1_b;
select_param0_reg_b[0] <= select_param0_b;
end
endmodule
`timescale 1 ns / 1 ns
module main
(
clk,
clk2x,
clk1x_follower,
reset,
start,
finish,
memory_controller_waitrequest,
memory_controller_enable_a,
memory_controller_address_a,
memory_controller_write_enable_a,
memory_controller_in_a,
memory_controller_size_a,
memory_controller_out_a,
memory_controller_enable_b,
memory_controller_address_b,
memory_controller_write_enable_b,
memory_controller_in_b,
memory_controller_size_b,
memory_controller_out_b,
return_val
);
parameter [8:0] LEGUP_0 = 9'd0;
parameter [8:0] LEGUP_F_main_BB_convolutionloop_bodydim2lrph_1 = 9'd1;
parameter [8:0] LEGUP_F_main_BB_convolutionloop_bodydim3lrph_2 = 9'd2;
parameter [8:0] LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3 = 9'd3;
parameter [8:0] LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4 = 9'd4;
parameter [8:0] LEGUP_F_main_BB_convolutioninnerloop_bodyiz_5 = 9'd5;
parameter [8:0] LEGUP_F_main_BB_convolutioninnerloop_exitiz_6 = 9'd6;
parameter [8:0] LEGUP_F_main_BB_convolutioninnerloop_exitk1_7 = 9'd7;
parameter [8:0] LEGUP_F_main_BB_convolutioninnerloop_exitk0_8 = 9'd8;
parameter [8:0] LEGUP_F_main_BB_convolutioninnerloop_exitk0_9 = 9'd9;
parameter [8:0] LEGUP_F_main_BB_convolutionloop_exitdim3_10 = 9'd10;
parameter [8:0] LEGUP_F_main_BB_convolutionloop_exitdim2_11 = 9'd11;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim2lrphpreheader_12 = 9'd12;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_13 = 9'd13;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_14 = 9'd14;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_15 = 9'd15;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_16 = 9'd16;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_17 = 9'd17;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_18 = 9'd18;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_19 = 9'd19;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_20 = 9'd20;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_21 = 9'd21;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_22 = 9'd22;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_23 = 9'd23;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_24 = 9'd24;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_25 = 9'd25;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_26 = 9'd26;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_27 = 9'd27;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_28 = 9'd28;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_29 = 9'd29;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_30 = 9'd30;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_31 = 9'd31;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_32 = 9'd32;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_33 = 9'd33;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_34 = 9'd34;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_35 = 9'd35;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_36 = 9'd36;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_37 = 9'd37;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_38 = 9'd38;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_39 = 9'd39;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_40 = 9'd40;
parameter [8:0] LEGUP_F_main_BB_inboundstrue_41 = 9'd41;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim2lrph_42 = 9'd42;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3lrph_43 = 9'd43;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_44 = 9'd44;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_45 = 9'd45;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_46 = 9'd46;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_47 = 9'd47;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_48 = 9'd48;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_49 = 9'd49;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_50 = 9'd50;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_51 = 9'd51;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_52 = 9'd52;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_53 = 9'd53;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_54 = 9'd54;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_55 = 9'd55;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_56 = 9'd56;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_57 = 9'd57;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_58 = 9'd58;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_59 = 9'd59;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_60 = 9'd60;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_61 = 9'd61;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_bodydim3_62 = 9'd62;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_exitdim3_63 = 9'd63;
parameter [8:0] LEGUP_F_main_BB_fusion3loop_exitdim2_64 = 9'd64;
parameter [8:0] LEGUP_F_main_BB_reducewindowloop_bodydim2lrphpreheader_65 = 9'd65;
parameter [8:0] LEGUP_F_main_BB_reducewindowloop_bodydim2lrph_66 = 9'd66;
parameter [8:0] LEGUP_F_main_BB_reducewindowloop_bodydim3lrph_67 = 9'd67;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_bodywindow1lrph_68 = 9'd68;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_bodywindow2lrph_69 = 9'd69;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_70 = 9'd70;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_71 = 9'd71;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_72 = 9'd72;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_73 = 9'd73;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_74 = 9'd74;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_exitwindow2_75 = 9'd75;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76 = 9'd76;
parameter [8:0] LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_77 = 9'd77;
parameter [8:0] LEGUP_F_main_BB_reducewindowloop_exitdim3_78 = 9'd78;
parameter [8:0] LEGUP_F_main_BB_reducewindowloop_exitdim2_79 = 9'd79;
parameter [8:0] LEGUP_F_main_BB_convolution1loop_bodydim2lrphpreheader_80 = 9'd80;
parameter [8:0] LEGUP_F_main_BB_convolution1loop_bodydim2lrph_81 = 9'd81;
parameter [8:0] LEGUP_F_main_BB_convolution1loop_bodydim3lrph_82 = 9'd82;
parameter [8:0] LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83 = 9'd83;
parameter [8:0] LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84 = 9'd84;
parameter [8:0] LEGUP_F_main_BB_convolution1innerloop_bodyizlrph_85 = 9'd85;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32uspreheader_86 = 9'd86;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_87 = 9'd87;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_88 = 9'd88;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_89 = 9'd89;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_90 = 9'd90;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_91 = 9'd91;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_92 = 9'd92;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_93 = 9'd93;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_94 = 9'd94;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_95 = 9'd95;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_96 = 9'd96;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_97 = 9'd97;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_98 = 9'd98;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_99 = 9'd99;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_100 = 9'd100;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_101 = 9'd101;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_102 = 9'd102;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_103 = 9'd103;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_104 = 9'd104;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_105 = 9'd105;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_106 = 9'd106;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_107 = 9'd107;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_108 = 9'd108;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_109 = 9'd109;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_110 = 9'd110;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_111 = 9'd111;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_112 = 9'd112;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_113 = 9'd113;
parameter [8:0] LEGUP_F_main_BB_inboundsafter32us_114 = 9'd114;
parameter [8:0] LEGUP_F_main_BB_convolution1innerloop_exitizloopexit_115 = 9'd115;
parameter [8:0] LEGUP_F_main_BB_convolution1innerloop_exitiz_116 = 9'd116;
parameter [8:0] LEGUP_F_main_BB_convolution1innerloop_exitk1_117 = 9'd117;
parameter [8:0] LEGUP_F_main_BB_convolution1innerloop_exitk0_118 = 9'd118;
parameter [8:0] LEGUP_F_main_BB_convolution1innerloop_exitk0_119 = 9'd119;
parameter [8:0] LEGUP_F_main_BB_convolution1loop_exitdim3_120 = 9'd120;
parameter [8:0] LEGUP_F_main_BB_convolution1loop_exitdim2_121 = 9'd121;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim2lrphpreheader_122 = 9'd122;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim2lrph_123 = 9'd123;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3lrph_124 = 9'd124;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_125 = 9'd125;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_126 = 9'd126;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_127 = 9'd127;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_128 = 9'd128;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_129 = 9'd129;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_130 = 9'd130;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_131 = 9'd131;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_132 = 9'd132;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_133 = 9'd133;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_134 = 9'd134;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_135 = 9'd135;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_136 = 9'd136;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_137 = 9'd137;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_138 = 9'd138;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_139 = 9'd139;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_140 = 9'd140;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_141 = 9'd141;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_bodydim3_142 = 9'd142;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_exitdim3_143 = 9'd143;
parameter [8:0] LEGUP_F_main_BB_fusion2loop_exitdim2_144 = 9'd144;
parameter [8:0] LEGUP_F_main_BB_reducewindow1loop_bodydim2lrphpreheader_145 = 9'd145;
parameter [8:0] LEGUP_F_main_BB_reducewindow1loop_bodydim2lrph_146 = 9'd146;
parameter [8:0] LEGUP_F_main_BB_reducewindow1loop_bodydim3lrph_147 = 9'd147;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_bodywindow1lrph_148 = 9'd148;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_bodywindow3lrphuspreheader_149 = 9'd149;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_150 = 9'd150;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_151 = 9'd151;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_152 = 9'd152;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_153 = 9'd153;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_154 = 9'd154;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_exitwindow2_155 = 9'd155;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156 = 9'd156;
parameter [8:0] LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_157 = 9'd157;
parameter [8:0] LEGUP_F_main_BB_reducewindow1loop_exitdim3_158 = 9'd158;
parameter [8:0] LEGUP_F_main_BB_reducewindow1loop_exitdim2_159 = 9'd159;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1preheader_160 = 9'd160;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_161 = 9'd161;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_162 = 9'd162;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_163 = 9'd163;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_164 = 9'd164;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_165 = 9'd165;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_166 = 9'd166;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_167 = 9'd167;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_168 = 9'd168;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_169 = 9'd169;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_170 = 9'd170;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_171 = 9'd171;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_172 = 9'd172;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_173 = 9'd173;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_174 = 9'd174;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_175 = 9'd175;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_176 = 9'd176;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_177 = 9'd177;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_178 = 9'd178;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_179 = 9'd179;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_180 = 9'd180;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_181 = 9'd181;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_182 = 9'd182;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_183 = 9'd183;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_184 = 9'd184;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_185 = 9'd185;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_186 = 9'd186;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_187 = 9'd187;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_188 = 9'd188;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_189 = 9'd189;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_190 = 9'd190;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_191 = 9'd191;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_192 = 9'd192;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_193 = 9'd193;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_194 = 9'd194;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_195 = 9'd195;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_196 = 9'd196;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_197 = 9'd197;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_198 = 9'd198;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_199 = 9'd199;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_200 = 9'd200;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_201 = 9'd201;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_202 = 9'd202;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_203 = 9'd203;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_204 = 9'd204;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_205 = 9'd205;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_206 = 9'd206;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_207 = 9'd207;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_208 = 9'd208;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_209 = 9'd209;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_210 = 9'd210;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_211 = 9'd211;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_212 = 9'd212;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_213 = 9'd213;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_214 = 9'd214;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_215 = 9'd215;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_216 = 9'd216;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_217 = 9'd217;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_218 = 9'd218;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_219 = 9'd219;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_220 = 9'd220;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_221 = 9'd221;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_222 = 9'd222;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_223 = 9'd223;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_224 = 9'd224;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_225 = 9'd225;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_226 = 9'd226;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_227 = 9'd227;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_228 = 9'd228;
parameter [8:0] LEGUP_F_main_BB_fusion1loop_bodydim1_229 = 9'd229;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreductionlrphpreheader_230 = 9'd230;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreductionlrph_231 = 9'd231;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_232 = 9'd232;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_233 = 9'd233;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_234 = 9'd234;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_235 = 9'd235;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_236 = 9'd236;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_237 = 9'd237;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_238 = 9'd238;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_239 = 9'd239;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_240 = 9'd240;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_241 = 9'd241;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_242 = 9'd242;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_243 = 9'd243;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_244 = 9'd244;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_245 = 9'd245;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_246 = 9'd246;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_247 = 9'd247;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_248 = 9'd248;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_249 = 9'd249;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_250 = 9'd250;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_251 = 9'd251;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_252 = 9'd252;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_253 = 9'd253;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_254 = 9'd254;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_255 = 9'd255;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_256 = 9'd256;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_257 = 9'd257;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_258 = 9'd258;
parameter [8:0] LEGUP_F_main_BB_dotloop_bodyreduction_259 = 9'd259;
parameter [8:0] LEGUP_F_main_BB_dotloop_exitreduction_260 = 9'd260;
parameter [8:0] LEGUP_F_main_BB_dotloop_exitreduction_261 = 9'd261;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0preheader_262 = 9'd262;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_263 = 9'd263;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_264 = 9'd264;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_265 = 9'd265;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_266 = 9'd266;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_267 = 9'd267;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_268 = 9'd268;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_269 = 9'd269;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_270 = 9'd270;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_271 = 9'd271;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_272 = 9'd272;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_273 = 9'd273;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_274 = 9'd274;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_275 = 9'd275;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_276 = 9'd276;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_277 = 9'd277;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_278 = 9'd278;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_279 = 9'd279;
parameter [8:0] LEGUP_F_main_BB_fusionloop_bodydim0_280 = 9'd280;
parameter [8:0] LEGUP_F_main_BB_fusionloop_exitdim0_281 = 9'd281;
parameter [8:0] LEGUP_F_main_BB_fusionloop_exitdim0_282 = 9'd282;
parameter [8:0] LEGUP_F_main_BB_fusionloop_exitdim0_283 = 9'd283;
parameter [8:0] tag_offset = 9'd0;
parameter [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] tag_addr_offset = {tag_offset, 55'd0};
input clk;
input clk2x;
input clk1x_follower;
input reset;
input start;
output reg finish;
input memory_controller_waitrequest;
output reg memory_controller_enable_a;
output reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] memory_controller_address_a;
output reg memory_controller_write_enable_a;
output reg [`MEMORY_CONTROLLER_DATA_SIZE-1:0] memory_controller_in_a;
output reg [1:0] memory_controller_size_a;
input [`MEMORY_CONTROLLER_DATA_SIZE-1:0] memory_controller_out_a;
output reg memory_controller_enable_b;
output reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] memory_controller_address_b;
output reg memory_controller_write_enable_b;
output reg [`MEMORY_CONTROLLER_DATA_SIZE-1:0] memory_controller_in_b;
output reg [1:0] memory_controller_size_b;
input [`MEMORY_CONTROLLER_DATA_SIZE-1:0] memory_controller_out_b;
output reg [31:0] return_val;
reg [8:0] cur_state;
reg [8:0] next_state;
reg [63:0] main_convolutionloop_bodydim2lrph_convolutionindvardim1121;
reg [63:0] main_convolutionloop_bodydim2lrph_convolutionindvardim1121_reg;
reg [63:0] main_convolutionloop_bodydim2lrph_0;
reg [63:0] main_convolutionloop_bodydim2lrph_0_reg;
reg [63:0] main_convolutionloop_bodydim3lrph_convolutionindvardim2118;
reg [63:0] main_convolutionloop_bodydim3lrph_convolutionindvardim2118_reg;
reg [63:0] main_convolutionloop_bodydim3lrph_1;
reg [63:0] main_convolutionloop_bodydim3lrph_1_reg;
reg [63:0] main_convolutionloop_bodydim3lrph_2;
reg [63:0] main_convolutionloop_bodydim3lrph_2_reg;
reg [63:0] main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115;
reg [63:0] main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_convolutioninnerloop_bodyk0lrph_scevgep99;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_convolutioninnerloop_bodyk0lrph_scevgep99_reg;
reg [31:0] main_convolutioninnerloop_bodyk1lrph_3;
reg [31:0] main_convolutioninnerloop_bodyk1lrph_3_reg;
reg [31:0] main_convolutioninnerloop_bodyk1lrph_4;
reg [31:0] main_convolutioninnerloop_bodyk1lrph_4_reg;
reg [63:0] main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112;
reg [63:0] main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112_reg;
reg [63:0] main_convolutioninnerloop_bodyk1lrph_5;
reg [63:0] main_convolutioninnerloop_bodyk1lrph_5_reg;
reg main_convolutioninnerloop_bodyk1lrph_6;
reg main_convolutioninnerloop_bodyk1lrph_6_reg;
reg [31:0] main_convolutioninnerloop_bodyiz_7;
reg [31:0] main_convolutioninnerloop_bodyiz_7_reg;
reg [31:0] main_convolutioninnerloop_bodyiz_8;
reg [31:0] main_convolutioninnerloop_bodyiz_8_reg;
reg [63:0] main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109;
reg [63:0] main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109_reg;
reg [63:0] main_convolutioninnerloop_bodyiz_9;
reg main_convolutioninnerloop_bodyiz_10;
reg main_convolutioninnerloop_bodyiz_11;
reg [31:0] main_convolutioninnerloop_exitiz_12;
reg [31:0] main_convolutioninnerloop_exitiz_12_reg;
reg [31:0] main_convolutioninnerloop_exitiz_13;
reg [31:0] main_convolutioninnerloop_exitiz_13_reg;
reg [63:0] main_convolutioninnerloop_exitiz_14;
reg main_convolutioninnerloop_exitiz_exitcond91;
reg [63:0] main_convolutioninnerloop_exitk1_15;
reg main_convolutioninnerloop_exitk1_exitcond94;
reg [63:0] main_convolutioninnerloop_exitk0_16;
reg [63:0] main_convolutioninnerloop_exitk0_16_reg;
reg main_convolutioninnerloop_exitk0_exitcond97;
reg main_convolutioninnerloop_exitk0_exitcond97_reg;
reg [63:0] main_convolutionloop_exitdim3_17;
reg main_convolutionloop_exitdim3_exitcond100;
reg [63:0] main_convolutionloop_exitdim2_18;
reg main_convolutionloop_exitdim2_exitcond103;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_inboundstrue_scevgep92;
reg [63:0] main_inboundstrue_19;
reg [63:0] main_inboundstrue_19_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_inboundstrue_scevgep93;
reg [31:0] main_inboundstrue_20;
reg [31:0] main_inboundstrue_20_reg;
reg [31:0] main_inboundstrue_21;
reg [31:0] main_inboundstrue_22;
reg [31:0] main_inboundstrue_23;
reg [63:0] main_fusion3loop_bodydim2lrph_fusion3indvardim1103;
reg [63:0] main_fusion3loop_bodydim2lrph_fusion3indvardim1103_reg;
reg [63:0] main_fusion3loop_bodydim3lrph_fusion3indvardim2101;
reg [63:0] main_fusion3loop_bodydim3lrph_fusion3indvardim2101_reg;
reg [63:0] main_fusion3loop_bodydim3_fusion3indvardim399;
reg [63:0] main_fusion3loop_bodydim3_fusion3indvardim399_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion3loop_bodydim3_scevgep82;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion3loop_bodydim3_scevgep82_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion3loop_bodydim3_scevgep84;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion3loop_bodydim3_scevgep83;
reg [31:0] main_fusion3loop_bodydim3_24;
reg [31:0] main_fusion3loop_bodydim3_25;
reg [31:0] main_fusion3loop_bodydim3_26;
reg [31:0] main_fusion3loop_bodydim3_26_reg;
reg main_fusion3loop_bodydim3_27;
reg [31:0] main_fusion3loop_bodydim3_28;
reg [63:0] main_fusion3loop_bodydim3_29;
reg [63:0] main_fusion3loop_bodydim3_29_reg;
reg main_fusion3loop_bodydim3_exitcond81;
reg main_fusion3loop_bodydim3_exitcond81_reg;
reg [63:0] main_fusion3loop_exitdim3_30;
reg main_fusion3loop_exitdim3_exitcond85;
reg [63:0] main_fusion3loop_exitdim2_31;
reg main_fusion3loop_exitdim2_exitcond88;
reg [63:0] main_reducewindowloop_bodydim2lrph_reducewindowindvardim194;
reg [63:0] main_reducewindowloop_bodydim2lrph_reducewindowindvardim194_reg;
reg [63:0] main_reducewindowloop_bodydim2lrph_32;
reg [63:0] main_reducewindowloop_bodydim2lrph_32_reg;
reg [63:0] main_reducewindowloop_bodydim3lrph_reducewindowindvardim292;
reg [63:0] main_reducewindowloop_bodydim3lrph_reducewindowindvardim292_reg;
reg [63:0] main_reducewindowloop_bodydim3lrph_33;
reg [63:0] main_reducewindowloop_bodydim3lrph_33_reg;
reg [63:0] main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389;
reg [63:0] main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_reducewindowinnerloop_bodywindow1lrph_scevgep74;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_reducewindowinnerloop_bodywindow1lrph_scevgep74_reg;
reg [31:0] main_reducewindowinnerloop_bodywindow2lrph_34;
reg [31:0] main_reducewindowinnerloop_bodywindow2lrph_34_reg;
reg [63:0] main_reducewindowinnerloop_bodywindow2lrph_35;
reg [63:0] main_reducewindowinnerloop_bodywindow2lrph_35_reg;
reg [63:0] main_reducewindowinnerloop_bodywindow2lrph_36;
reg [63:0] main_reducewindowinnerloop_bodywindow2lrph_36_reg;
reg [31:0] main_reducewindowinnerloop_exitwindow3_37;
reg [31:0] main_reducewindowinnerloop_exitwindow3_37_reg;
reg [63:0] main_reducewindowinnerloop_exitwindow3_38;
reg [63:0] main_reducewindowinnerloop_exitwindow3_38_reg;
reg [63:0] main_reducewindowinnerloop_exitwindow3_39;
reg [63:0] main_reducewindowinnerloop_exitwindow3_39_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_reducewindowinnerloop_exitwindow3_scevgep69;
reg [31:0] main_reducewindowinnerloop_exitwindow3_40;
reg [31:0] main_reducewindowinnerloop_exitwindow3_40_reg;
reg main_reducewindowinnerloop_exitwindow3_41;
reg main_reducewindowinnerloop_exitwindow3_42;
reg main_reducewindowinnerloop_exitwindow3_42_reg;
reg main_reducewindowinnerloop_exitwindow3_43;
reg [31:0] main_reducewindowinnerloop_exitwindow3_44;
reg [31:0] main_reducewindowinnerloop_exitwindow3_44_reg;
reg [63:0] main_reducewindowinnerloop_exitwindow3_invarinc17;
reg [63:0] main_reducewindowinnerloop_exitwindow3_invarinc17_reg;
reg main_reducewindowinnerloop_exitwindow3_exitcond68;
reg main_reducewindowinnerloop_exitwindow3_exitcond68_reg;
reg [63:0] main_reducewindowinnerloop_exitwindow2_invarinc16;
reg main_reducewindowinnerloop_exitwindow2_exitcond70;
reg [63:0] main_reducewindowinnerloop_exitwindow0_45;
reg [63:0] main_reducewindowinnerloop_exitwindow0_45_reg;
reg main_reducewindowinnerloop_exitwindow0_exitcond72;
reg main_reducewindowinnerloop_exitwindow0_exitcond72_reg;
reg [63:0] main_reducewindowloop_exitdim3_46;
reg main_reducewindowloop_exitdim3_exitcond75;
reg [63:0] main_reducewindowloop_exitdim2_47;
reg main_reducewindowloop_exitdim2_exitcond78;
reg [63:0] main_convolution1loop_bodydim2lrph_convolution1indvardim173;
reg [63:0] main_convolution1loop_bodydim2lrph_convolution1indvardim173_reg;
reg [63:0] main_convolution1loop_bodydim2lrph_48;
reg [63:0] main_convolution1loop_bodydim2lrph_48_reg;
reg [63:0] main_convolution1loop_bodydim3lrph_convolution1indvardim270;
reg [63:0] main_convolution1loop_bodydim3lrph_convolution1indvardim270_reg;
reg [63:0] main_convolution1loop_bodydim3lrph_49;
reg [63:0] main_convolution1loop_bodydim3lrph_49_reg;
reg [63:0] main_convolution1loop_bodydim3lrph_50;
reg [63:0] main_convolution1loop_bodydim3lrph_50_reg;
reg [63:0] main_convolution1innerloop_bodyk0lrph_convolution1indvardim367;
reg [63:0] main_convolution1innerloop_bodyk0lrph_convolution1indvardim367_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_convolution1innerloop_bodyk0lrph_scevgep61;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_convolution1innerloop_bodyk0lrph_scevgep61_reg;
reg [31:0] main_convolution1innerloop_bodyk1lrph_51;
reg [31:0] main_convolution1innerloop_bodyk1lrph_51_reg;
reg [31:0] main_convolution1innerloop_bodyk1lrph_52;
reg [31:0] main_convolution1innerloop_bodyk1lrph_52_reg;
reg [63:0] main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064;
reg [63:0] main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064_reg;
reg [63:0] main_convolution1innerloop_bodyk1lrph_53;
reg [63:0] main_convolution1innerloop_bodyk1lrph_53_reg;
reg main_convolution1innerloop_bodyk1lrph_54;
reg main_convolution1innerloop_bodyk1lrph_54_reg;
reg [31:0] main_convolution1innerloop_bodyizlrph_55;
reg [31:0] main_convolution1innerloop_bodyizlrph_55_reg;
reg [31:0] main_convolution1innerloop_bodyizlrph_56;
reg [31:0] main_convolution1innerloop_bodyizlrph_56_reg;
reg [63:0] main_convolution1innerloop_bodyizlrph_convolution1innerindvark160;
reg [63:0] main_convolution1innerloop_bodyizlrph_convolution1innerindvark160_reg;
reg [63:0] main_convolution1innerloop_bodyizlrph_57;
reg [63:0] main_convolution1innerloop_bodyizlrph_57_reg;
reg [63:0] main_convolution1innerloop_bodyizlrph_58;
reg main_convolution1innerloop_bodyizlrph_59;
reg main_convolution1innerloop_bodyizlrph_60;
reg [31:0] main_inboundsafter32us_61;
reg [31:0] main_inboundsafter32us_61_reg;
reg [63:0] main_inboundsafter32us_convolution1innerindvariz58us;
reg [63:0] main_inboundsafter32us_convolution1innerindvariz58us_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_inboundsafter32us_scevgep51;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_inboundsafter32us_scevgep52;
reg [31:0] main_inboundsafter32us_62;
reg [31:0] main_inboundsafter32us_63;
reg [31:0] main_inboundsafter32us_64;
reg [31:0] main_inboundsafter32us_65;
reg [31:0] main_inboundsafter32us_65_reg;
reg [63:0] main_inboundsafter32us_66;
reg [63:0] main_inboundsafter32us_66_reg;
reg main_inboundsafter32us_exitcond50;
reg main_inboundsafter32us_exitcond50_reg;
reg [31:0] main_convolution1innerloop_exitiz_67;
reg [31:0] main_convolution1innerloop_exitiz_67_reg;
reg [31:0] main_convolution1innerloop_exitiz_68;
reg [31:0] main_convolution1innerloop_exitiz_68_reg;
reg [63:0] main_convolution1innerloop_exitiz_69;
reg main_convolution1innerloop_exitiz_exitcond53;
reg [63:0] main_convolution1innerloop_exitk1_70;
reg main_convolution1innerloop_exitk1_exitcond56;
reg [63:0] main_convolution1innerloop_exitk0_71;
reg [63:0] main_convolution1innerloop_exitk0_71_reg;
reg main_convolution1innerloop_exitk0_exitcond59;
reg main_convolution1innerloop_exitk0_exitcond59_reg;
reg [63:0] main_convolution1loop_exitdim3_72;
reg main_convolution1loop_exitdim3_exitcond62;
reg [63:0] main_convolution1loop_exitdim2_73;
reg main_convolution1loop_exitdim2_exitcond65;
reg [63:0] main_fusion2loop_bodydim2lrph_fusion2indvardim154;
reg [63:0] main_fusion2loop_bodydim2lrph_fusion2indvardim154_reg;
reg [63:0] main_fusion2loop_bodydim3lrph_fusion2indvardim252;
reg [63:0] main_fusion2loop_bodydim3lrph_fusion2indvardim252_reg;
reg [63:0] main_fusion2loop_bodydim3_fusion2indvardim350;
reg [63:0] main_fusion2loop_bodydim3_fusion2indvardim350_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion2loop_bodydim3_scevgep26;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion2loop_bodydim3_scevgep26_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion2loop_bodydim3_scevgep28;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion2loop_bodydim3_scevgep27;
reg [31:0] main_fusion2loop_bodydim3_74;
reg [31:0] main_fusion2loop_bodydim3_75;
reg [31:0] main_fusion2loop_bodydim3_76;
reg [63:0] main_fusion2loop_bodydim3_77;
reg [63:0] main_fusion2loop_bodydim3_77_reg;
reg main_fusion2loop_bodydim3_exitcond25;
reg main_fusion2loop_bodydim3_exitcond25_reg;
reg [63:0] main_fusion2loop_exitdim3_78;
reg main_fusion2loop_exitdim3_exitcond29;
reg [63:0] main_fusion2loop_exitdim2_79;
reg main_fusion2loop_exitdim2_exitcond32;
reg [63:0] main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145;
reg [63:0] main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145_reg;
reg [63:0] main_reducewindow1loop_bodydim2lrph_80;
reg [63:0] main_reducewindow1loop_bodydim2lrph_80_reg;
reg [63:0] main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242;
reg [63:0] main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242_reg;
reg [63:0] main_reducewindow1loop_bodydim3lrph_81;
reg [63:0] main_reducewindow1loop_bodydim3lrph_81_reg;
reg [63:0] main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339;
reg [63:0] main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_reducewindow1innerloop_bodywindow1lrph_scevgep18;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_reducewindow1innerloop_bodywindow1lrph_scevgep18_reg;
reg [31:0] main_reducewindow1innerloop_bodywindow3lrphuspreheader_82;
reg [31:0] main_reducewindow1innerloop_bodywindow3lrphuspreheader_82_reg;
reg [63:0] main_reducewindow1innerloop_bodywindow3lrphuspreheader_83;
reg [63:0] main_reducewindow1innerloop_bodywindow3lrphuspreheader_83_reg;
reg [63:0] main_reducewindow1innerloop_bodywindow3lrphuspreheader_84;
reg [63:0] main_reducewindow1innerloop_bodywindow3lrphuspreheader_84_reg;
reg [31:0] main_reducewindow1innerloop_exitwindow3us_85;
reg [31:0] main_reducewindow1innerloop_exitwindow3us_85_reg;
reg [63:0] main_reducewindow1innerloop_exitwindow3us_86;
reg [63:0] main_reducewindow1innerloop_exitwindow3us_86_reg;
reg [63:0] main_reducewindow1innerloop_exitwindow3us_87;
reg [63:0] main_reducewindow1innerloop_exitwindow3us_87_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_reducewindow1innerloop_exitwindow3us_scevgep13;
reg [31:0] main_reducewindow1innerloop_exitwindow3us_88;
reg [31:0] main_reducewindow1innerloop_exitwindow3us_88_reg;
reg main_reducewindow1innerloop_exitwindow3us_89;
reg main_reducewindow1innerloop_exitwindow3us_90;
reg main_reducewindow1innerloop_exitwindow3us_90_reg;
reg main_reducewindow1innerloop_exitwindow3us_91;
reg [31:0] main_reducewindow1innerloop_exitwindow3us_92;
reg [31:0] main_reducewindow1innerloop_exitwindow3us_92_reg;
reg [63:0] main_reducewindow1innerloop_exitwindow3us_invarinc44us;
reg [63:0] main_reducewindow1innerloop_exitwindow3us_invarinc44us_reg;
reg main_reducewindow1innerloop_exitwindow3us_exitcond12;
reg main_reducewindow1innerloop_exitwindow3us_exitcond12_reg;
reg [63:0] main_reducewindow1innerloop_exitwindow2_invarinc43;
reg main_reducewindow1innerloop_exitwindow2_exitcond14;
reg [63:0] main_reducewindow1innerloop_exitwindow0_93;
reg [63:0] main_reducewindow1innerloop_exitwindow0_93_reg;
reg main_reducewindow1innerloop_exitwindow0_exitcond16;
reg main_reducewindow1innerloop_exitwindow0_exitcond16_reg;
reg [63:0] main_reducewindow1loop_exitdim3_94;
reg main_reducewindow1loop_exitdim3_exitcond19;
reg [63:0] main_reducewindow1loop_exitdim2_95;
reg main_reducewindow1loop_exitdim2_exitcond22;
reg [63:0] main_fusion1loop_bodydim1_96;
reg [63:0] main_fusion1loop_bodydim1_96_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion1loop_bodydim1_scevgep11;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion1loop_bodydim1_scevgep11_reg;
reg [63:0] main_fusion1loop_bodydim1_97;
reg [63:0] main_fusion1loop_bodydim1_97_reg;
reg [63:0] main_fusion1loop_bodydim1_98;
reg [63:0] main_fusion1loop_bodydim1_99;
reg [63:0] main_fusion1loop_bodydim1_100;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusion1loop_bodydim1_101;
reg [31:0] main_fusion1loop_bodydim1_102;
reg [31:0] main_fusion1loop_bodydim1_102_reg;
reg main_fusion1loop_bodydim1_103;
reg [31:0] main_fusion1loop_bodydim1_104;
reg [63:0] main_fusion1loop_bodydim1_105;
reg [63:0] main_fusion1loop_bodydim1_105_reg;
reg main_fusion1loop_bodydim1_exitcond10;
reg main_fusion1loop_bodydim1_exitcond10_reg;
reg [63:0] main_dotloop_bodyreductionlrph_dotindvarrhs19;
reg [63:0] main_dotloop_bodyreductionlrph_dotindvarrhs19_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_dotloop_bodyreductionlrph_scevgep9;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_dotloop_bodyreductionlrph_scevgep9_reg;
reg [31:0] main_dotloop_bodyreduction_106;
reg [31:0] main_dotloop_bodyreduction_106_reg;
reg [63:0] main_dotloop_bodyreduction_dotindvarreduction7;
reg [63:0] main_dotloop_bodyreduction_dotindvarreduction7_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_dotloop_bodyreduction_scevgep5;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_dotloop_bodyreduction_scevgep6;
reg [31:0] main_dotloop_bodyreduction_107;
reg [31:0] main_dotloop_bodyreduction_108;
reg [31:0] main_dotloop_bodyreduction_109;
reg [31:0] main_dotloop_bodyreduction_110;
reg [31:0] main_dotloop_bodyreduction_110_reg;
reg [63:0] main_dotloop_bodyreduction_111;
reg [63:0] main_dotloop_bodyreduction_111_reg;
reg main_dotloop_bodyreduction_exitcond;
reg main_dotloop_bodyreduction_exitcond_reg;
reg [63:0] main_dotloop_exitreduction_112;
reg [63:0] main_dotloop_exitreduction_112_reg;
reg main_dotloop_exitreduction_exitcond7;
reg main_dotloop_exitreduction_exitcond7_reg;
reg [63:0] main_fusionloop_bodydim0_fusionindvardim05;
reg [63:0] main_fusionloop_bodydim0_fusionindvardim05_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusionloop_bodydim0_scevgep;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusionloop_bodydim0_scevgep_reg;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusionloop_bodydim0_scevgep3;
reg [`MEMORY_CONTROLLER_ADDR_SIZE-1:0] main_fusionloop_bodydim0_scevgep4;
reg [31:0] main_fusionloop_bodydim0_113;
reg [31:0] main_fusionloop_bodydim0_114;
reg [31:0] main_fusionloop_bodydim0_115;
reg [63:0] main_fusionloop_bodydim0_116;
reg [63:0] main_fusionloop_bodydim0_116_reg;
reg main_fusionloop_bodydim0_exitcond2;
reg main_fusionloop_bodydim0_exitcond2_reg;
reg [31:0] main_fusionloop_exitdim0_leflow_retval;
reg [31:0] main_altfp_add_32_0_op0;
reg [31:0] main_altfp_add_32_0_op1;
wire [31:0] altfp_adder_main_fusion3loop_bodydim3_26_out;
reg altfp_main_fusion3loop_bodydim3_26_en;
reg [31:0] main_altfp_add_32_0;
reg [31:0] main_altfp_multiply_32_0_op0;
reg [31:0] main_altfp_multiply_32_0_op1;
wire [31:0] altfp_multiplier_main_inboundstrue_22_out;
reg altfp_main_inboundstrue_22_en;
reg [31:0] main_altfp_multiply_32_0;
reg [63:0] main_unsigned_modulus_64_0_op0;
reg [63:0] main_unsigned_modulus_64_0_op1;
wire [63:0] lpm_divide_main_fusion1loop_bodydim1_99_temp_out;
wire [63:0] main_fusion1loop_bodydim1_99_unused;
reg lpm_divide_main_fusion1loop_bodydim1_99_en;
reg [63:0] lpm_divide_main_fusion1loop_bodydim1_99_out;
reg [63:0] main_unsigned_modulus_64_0;
reg [63:0] main_unsigned_divide_64_0_op0;
reg [63:0] main_unsigned_divide_64_0_op1;
wire [63:0] lpm_divide_main_fusion1loop_bodydim1_100_temp_out;
wire [63:0] main_fusion1loop_bodydim1_100_unused;
reg lpm_divide_main_fusion1loop_bodydim1_100_en;
reg [63:0] lpm_divide_main_fusion1loop_bodydim1_100_out;
reg [63:0] main_unsigned_divide_64_0;
wire altfp_compare32_1_main_fusion3loop_bodydim3_27_out;
reg altfp_main_fusion3loop_bodydim3_27_en;
wire main_fusion3loop_bodydim3_27_unused;
wire altfp_compare32_1_main_reducewindowinnerloop_exitwindow3_42_out;
reg altfp_main_reducewindowinnerloop_exitwindow3_42_en;
wire main_reducewindowinnerloop_exitwindow3_42_unused;
wire altfp_compare32_1_main_reducewindowinnerloop_exitwindow3_41_out;
reg altfp_main_reducewindowinnerloop_exitwindow3_41_en;
wire main_reducewindowinnerloop_exitwindow3_41_unused;
wire altfp_compare32_1_main_reducewindow1innerloop_exitwindow3us_90_out;
reg altfp_main_reducewindow1innerloop_exitwindow3us_90_en;
wire main_reducewindow1innerloop_exitwindow3us_90_unused;
wire altfp_compare32_1_main_reducewindow1innerloop_exitwindow3us_89_out;
reg altfp_main_reducewindow1innerloop_exitwindow3us_89_en;
wire main_reducewindow1innerloop_exitwindow3us_89_unused;
wire altfp_compare32_1_main_fusion1loop_bodydim1_103_out;
reg altfp_main_fusion1loop_bodydim1_103_en;
wire main_fusion1loop_bodydim1_103_unused;
/* %26 = fadd float %24, %25*/
altfp_adder_14 altfp_adder_14_main_fusion3loop_bodydim3_26 (
.result (altfp_adder_main_fusion3loop_bodydim3_26_out),
.dataa (main_altfp_add_32_0_op0),
.datab (main_altfp_add_32_0_op1),
.clock (clk),
.clk_en (altfp_main_fusion3loop_bodydim3_26_en)
);
/* %22 = fmul float %20, %21*/
altfp_multiplier_11 altfp_multiplier_11_main_inboundstrue_22 (
.result (altfp_multiplier_main_inboundstrue_22_out),
.dataa (main_altfp_multiply_32_0_op0),
.datab (main_altfp_multiply_32_0_op1),
.clock (clk),
.clk_en (altfp_main_inboundstrue_22_en)
);
/* %99 = urem i64 %98, 7*/
lpm_divide lpm_divide_main_fusion1loop_bodydim1_99 (
.quotient (main_fusion1loop_bodydim1_99_unused),
.remain (lpm_divide_main_fusion1loop_bodydim1_99_temp_out),
.clock (clk),
.aclr (1'd0),
.clken (lpm_divide_main_fusion1loop_bodydim1_99_en),
.numer (main_unsigned_modulus_64_0_op0),
.denom (main_unsigned_modulus_64_0_op1)
);
defparam
lpm_divide_main_fusion1loop_bodydim1_99.lpm_pipeline = 64,
lpm_divide_main_fusion1loop_bodydim1_99.lpm_widthn = 64,
lpm_divide_main_fusion1loop_bodydim1_99.lpm_widthd = 64,
lpm_divide_main_fusion1loop_bodydim1_99.lpm_drepresentation = "UNSIGNED",
lpm_divide_main_fusion1loop_bodydim1_99.lpm_nrepresentation = "UNSIGNED",
lpm_divide_main_fusion1loop_bodydim1_99.lpm_hint = "LPM_REMAINDERPOSITIVE=FALSE";
/* %100 = udiv i64 %96, 112*/
lpm_divide lpm_divide_main_fusion1loop_bodydim1_100 (
.quotient (lpm_divide_main_fusion1loop_bodydim1_100_temp_out),
.remain (main_fusion1loop_bodydim1_100_unused),
.clock (clk),
.aclr (1'd0),
.clken (lpm_divide_main_fusion1loop_bodydim1_100_en),
.numer (main_unsigned_divide_64_0_op0),
.denom (main_unsigned_divide_64_0_op1)
);
defparam
lpm_divide_main_fusion1loop_bodydim1_100.lpm_pipeline = 64,
lpm_divide_main_fusion1loop_bodydim1_100.lpm_widthn = 64,
lpm_divide_main_fusion1loop_bodydim1_100.lpm_widthd = 64,
lpm_divide_main_fusion1loop_bodydim1_100.lpm_drepresentation = "UNSIGNED",
lpm_divide_main_fusion1loop_bodydim1_100.lpm_nrepresentation = "UNSIGNED",
lpm_divide_main_fusion1loop_bodydim1_100.lpm_hint = "LPM_REMAINDERPOSITIVE=FALSE";
/* %27 = fcmp ole float %26, 0.000000e+00*/
altfp_compare32_1 altfp_compare32_1_main_fusion3loop_bodydim3_27 (
.dataa (main_fusion3loop_bodydim3_26),
.datab (32'h0),
.clock (clk),
.clk_en (altfp_main_fusion3loop_bodydim3_27_en),
.aeb (main_fusion3loop_bodydim3_27_unused),
.aneb (main_fusion3loop_bodydim3_27_unused),
.alb (main_fusion3loop_bodydim3_27_unused),
.aleb (altfp_compare32_1_main_fusion3loop_bodydim3_27_out),
.agb (main_fusion3loop_bodydim3_27_unused),
.ageb (main_fusion3loop_bodydim3_27_unused),
.unordered (main_fusion3loop_bodydim3_27_unused)
);
/* %42 = fcmp ueq float %37, 0.000000e+00*/
altfp_compare32_1 altfp_compare32_1_main_reducewindowinnerloop_exitwindow3_42 (
.dataa (main_reducewindowinnerloop_exitwindow3_37_reg),
.datab (32'h0),
.clock (clk),
.clk_en (altfp_main_reducewindowinnerloop_exitwindow3_42_en),
.aeb (altfp_compare32_1_main_reducewindowinnerloop_exitwindow3_42_out),
.aneb (main_reducewindowinnerloop_exitwindow3_42_unused),
.alb (main_reducewindowinnerloop_exitwindow3_42_unused),
.aleb (main_reducewindowinnerloop_exitwindow3_42_unused),
.agb (main_reducewindowinnerloop_exitwindow3_42_unused),
.ageb (main_reducewindowinnerloop_exitwindow3_42_unused),
.unordered (main_reducewindowinnerloop_exitwindow3_42_unused)
);
/* %41 = fcmp oge float %37, %40*/
altfp_compare32_1 altfp_compare32_1_main_reducewindowinnerloop_exitwindow3_41 (
.dataa (main_reducewindowinnerloop_exitwindow3_37_reg),
.datab (main_reducewindowinnerloop_exitwindow3_40),
.clock (clk),
.clk_en (altfp_main_reducewindowinnerloop_exitwindow3_41_en),
.aeb (main_reducewindowinnerloop_exitwindow3_41_unused),
.aneb (main_reducewindowinnerloop_exitwindow3_41_unused),
.alb (main_reducewindowinnerloop_exitwindow3_41_unused),
.aleb (main_reducewindowinnerloop_exitwindow3_41_unused),
.agb (main_reducewindowinnerloop_exitwindow3_41_unused),
.ageb (altfp_compare32_1_main_reducewindowinnerloop_exitwindow3_41_out),
.unordered (main_reducewindowinnerloop_exitwindow3_41_unused)
);
/* %90 = fcmp ueq float %85, 0.000000e+00*/
altfp_compare32_1 altfp_compare32_1_main_reducewindow1innerloop_exitwindow3us_90 (
.dataa (main_reducewindow1innerloop_exitwindow3us_85_reg),
.datab (32'h0),
.clock (clk),
.clk_en (altfp_main_reducewindow1innerloop_exitwindow3us_90_en),
.aeb (altfp_compare32_1_main_reducewindow1innerloop_exitwindow3us_90_out),
.aneb (main_reducewindow1innerloop_exitwindow3us_90_unused),
.alb (main_reducewindow1innerloop_exitwindow3us_90_unused),
.aleb (main_reducewindow1innerloop_exitwindow3us_90_unused),
.agb (main_reducewindow1innerloop_exitwindow3us_90_unused),
.ageb (main_reducewindow1innerloop_exitwindow3us_90_unused),
.unordered (main_reducewindow1innerloop_exitwindow3us_90_unused)
);
/* %89 = fcmp oge float %85, %88*/
altfp_compare32_1 altfp_compare32_1_main_reducewindow1innerloop_exitwindow3us_89 (
.dataa (main_reducewindow1innerloop_exitwindow3us_85_reg),
.datab (main_reducewindow1innerloop_exitwindow3us_88),
.clock (clk),
.clk_en (altfp_main_reducewindow1innerloop_exitwindow3us_89_en),
.aeb (main_reducewindow1innerloop_exitwindow3us_89_unused),
.aneb (main_reducewindow1innerloop_exitwindow3us_89_unused),
.alb (main_reducewindow1innerloop_exitwindow3us_89_unused),
.aleb (main_reducewindow1innerloop_exitwindow3us_89_unused),
.agb (main_reducewindow1innerloop_exitwindow3us_89_unused),
.ageb (altfp_compare32_1_main_reducewindow1innerloop_exitwindow3us_89_out),
.unordered (main_reducewindow1innerloop_exitwindow3us_89_unused)
);
/* %103 = fcmp ole float %102, 0.000000e+00*/
altfp_compare32_1 altfp_compare32_1_main_fusion1loop_bodydim1_103 (
.dataa (main_fusion1loop_bodydim1_102),
.datab (32'h0),
.clock (clk),
.clk_en (altfp_main_fusion1loop_bodydim1_103_en),
.aeb (main_fusion1loop_bodydim1_103_unused),
.aneb (main_fusion1loop_bodydim1_103_unused),
.alb (main_fusion1loop_bodydim1_103_unused),
.aleb (altfp_compare32_1_main_fusion1loop_bodydim1_103_out),
.agb (main_fusion1loop_bodydim1_103_unused),
.ageb (main_fusion1loop_bodydim1_103_unused),
.unordered (main_fusion1loop_bodydim1_103_unused)
);
always @(posedge clk) begin
if (reset == 1'b1)
cur_state <= LEGUP_0;
else if (memory_controller_waitrequest == 1'd1)
cur_state <= cur_state;
else
cur_state <= next_state;
end
always @(*)
begin
next_state = cur_state;
case(cur_state) // synthesis parallel_case
LEGUP_0:
if ((start == 1'd1))
next_state = LEGUP_F_main_BB_convolutionloop_bodydim2lrph_1;
LEGUP_F_main_BB_convolution1innerloop_bodyizlrph_85:
if ((main_convolution1innerloop_bodyizlrph_60 == 1'd1))
next_state = LEGUP_F_main_BB_inboundsafter32uspreheader_86;
else if ((main_convolution1innerloop_bodyizlrph_60 == 1'd0))
next_state = LEGUP_F_main_BB_convolution1innerloop_exitiz_116;
LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83:
next_state = LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84;
LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84:
next_state = LEGUP_F_main_BB_convolution1innerloop_bodyizlrph_85;
LEGUP_F_main_BB_convolution1innerloop_exitiz_116:
if ((main_convolution1innerloop_exitiz_exitcond53 == 1'd1))
next_state = LEGUP_F_main_BB_convolution1innerloop_exitk1_117;
else if ((main_convolution1innerloop_exitiz_exitcond53 == 1'd0))
next_state = LEGUP_F_main_BB_convolution1innerloop_bodyizlrph_85;
LEGUP_F_main_BB_convolution1innerloop_exitizloopexit_115:
next_state = LEGUP_F_main_BB_convolution1innerloop_exitiz_116;
LEGUP_F_main_BB_convolution1innerloop_exitk0_118:
next_state = LEGUP_F_main_BB_convolution1innerloop_exitk0_119;
LEGUP_F_main_BB_convolution1innerloop_exitk0_119:
if ((main_convolution1innerloop_exitk0_exitcond59_reg == 1'd1))
next_state = LEGUP_F_main_BB_convolution1loop_exitdim3_120;
else if ((main_convolution1innerloop_exitk0_exitcond59_reg == 1'd0))
next_state = LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83;
LEGUP_F_main_BB_convolution1innerloop_exitk1_117:
if ((main_convolution1innerloop_exitk1_exitcond56 == 1'd1))
next_state = LEGUP_F_main_BB_convolution1innerloop_exitk0_118;
else if ((main_convolution1innerloop_exitk1_exitcond56 == 1'd0))
next_state = LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84;
LEGUP_F_main_BB_convolution1loop_bodydim2lrph_81:
next_state = LEGUP_F_main_BB_convolution1loop_bodydim3lrph_82;
LEGUP_F_main_BB_convolution1loop_bodydim2lrphpreheader_80:
next_state = LEGUP_F_main_BB_convolution1loop_bodydim2lrph_81;
LEGUP_F_main_BB_convolution1loop_bodydim3lrph_82:
next_state = LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83;
LEGUP_F_main_BB_convolution1loop_exitdim2_121:
if ((main_convolution1loop_exitdim2_exitcond65 == 1'd1))
next_state = LEGUP_F_main_BB_fusion2loop_bodydim2lrphpreheader_122;
else if ((main_convolution1loop_exitdim2_exitcond65 == 1'd0))
next_state = LEGUP_F_main_BB_convolution1loop_bodydim2lrph_81;
LEGUP_F_main_BB_convolution1loop_exitdim3_120:
if ((main_convolution1loop_exitdim3_exitcond62 == 1'd1))
next_state = LEGUP_F_main_BB_convolution1loop_exitdim2_121;
else if ((main_convolution1loop_exitdim3_exitcond62 == 1'd0))
next_state = LEGUP_F_main_BB_convolution1loop_bodydim3lrph_82;
LEGUP_F_main_BB_convolutioninnerloop_bodyiz_5:
if ((main_convolutioninnerloop_bodyiz_11 == 1'd1))
next_state = LEGUP_F_main_BB_inboundstrue_13;
else if ((main_convolutioninnerloop_bodyiz_11 == 1'd0))
next_state = LEGUP_F_main_BB_convolutioninnerloop_exitiz_6;
LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3:
next_state = LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4;
LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4:
next_state = LEGUP_F_main_BB_convolutioninnerloop_bodyiz_5;
LEGUP_F_main_BB_convolutioninnerloop_exitiz_6:
if ((main_convolutioninnerloop_exitiz_exitcond91 == 1'd1))
next_state = LEGUP_F_main_BB_convolutioninnerloop_exitk1_7;
else if ((main_convolutioninnerloop_exitiz_exitcond91 == 1'd0))
next_state = LEGUP_F_main_BB_convolutioninnerloop_bodyiz_5;
LEGUP_F_main_BB_convolutioninnerloop_exitk0_8:
next_state = LEGUP_F_main_BB_convolutioninnerloop_exitk0_9;
LEGUP_F_main_BB_convolutioninnerloop_exitk0_9:
if ((main_convolutioninnerloop_exitk0_exitcond97_reg == 1'd1))
next_state = LEGUP_F_main_BB_convolutionloop_exitdim3_10;
else if ((main_convolutioninnerloop_exitk0_exitcond97_reg == 1'd0))
next_state = LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3;
LEGUP_F_main_BB_convolutioninnerloop_exitk1_7:
if ((main_convolutioninnerloop_exitk1_exitcond94 == 1'd1))
next_state = LEGUP_F_main_BB_convolutioninnerloop_exitk0_8;
else if ((main_convolutioninnerloop_exitk1_exitcond94 == 1'd0))
next_state = LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4;
LEGUP_F_main_BB_convolutionloop_bodydim2lrph_1:
next_state = LEGUP_F_main_BB_convolutionloop_bodydim3lrph_2;
LEGUP_F_main_BB_convolutionloop_bodydim3lrph_2:
next_state = LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3;
LEGUP_F_main_BB_convolutionloop_exitdim2_11:
if ((main_convolutionloop_exitdim2_exitcond103 == 1'd1))
next_state = LEGUP_F_main_BB_fusion3loop_bodydim2lrphpreheader_12;
else if ((main_convolutionloop_exitdim2_exitcond103 == 1'd0))
next_state = LEGUP_F_main_BB_convolutionloop_bodydim2lrph_1;
LEGUP_F_main_BB_convolutionloop_exitdim3_10:
if ((main_convolutionloop_exitdim3_exitcond100 == 1'd1))
next_state = LEGUP_F_main_BB_convolutionloop_exitdim2_11;
else if ((main_convolutionloop_exitdim3_exitcond100 == 1'd0))
next_state = LEGUP_F_main_BB_convolutionloop_bodydim3lrph_2;
LEGUP_F_main_BB_dotloop_bodyreduction_232:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_233;
LEGUP_F_main_BB_dotloop_bodyreduction_233:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_234;
LEGUP_F_main_BB_dotloop_bodyreduction_234:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_235;
LEGUP_F_main_BB_dotloop_bodyreduction_235:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_236;
LEGUP_F_main_BB_dotloop_bodyreduction_236:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_237;
LEGUP_F_main_BB_dotloop_bodyreduction_237:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_238;
LEGUP_F_main_BB_dotloop_bodyreduction_238:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_239;
LEGUP_F_main_BB_dotloop_bodyreduction_239:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_240;
LEGUP_F_main_BB_dotloop_bodyreduction_240:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_241;
LEGUP_F_main_BB_dotloop_bodyreduction_241:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_242;
LEGUP_F_main_BB_dotloop_bodyreduction_242:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_243;
LEGUP_F_main_BB_dotloop_bodyreduction_243:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_244;
LEGUP_F_main_BB_dotloop_bodyreduction_244:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_245;
LEGUP_F_main_BB_dotloop_bodyreduction_245:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_246;
LEGUP_F_main_BB_dotloop_bodyreduction_246:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_247;
LEGUP_F_main_BB_dotloop_bodyreduction_247:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_248;
LEGUP_F_main_BB_dotloop_bodyreduction_248:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_249;
LEGUP_F_main_BB_dotloop_bodyreduction_249:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_250;
LEGUP_F_main_BB_dotloop_bodyreduction_250:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_251;
LEGUP_F_main_BB_dotloop_bodyreduction_251:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_252;
LEGUP_F_main_BB_dotloop_bodyreduction_252:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_253;
LEGUP_F_main_BB_dotloop_bodyreduction_253:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_254;
LEGUP_F_main_BB_dotloop_bodyreduction_254:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_255;
LEGUP_F_main_BB_dotloop_bodyreduction_255:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_256;
LEGUP_F_main_BB_dotloop_bodyreduction_256:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_257;
LEGUP_F_main_BB_dotloop_bodyreduction_257:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_258;
LEGUP_F_main_BB_dotloop_bodyreduction_258:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_259;
LEGUP_F_main_BB_dotloop_bodyreduction_259:
if ((main_dotloop_bodyreduction_exitcond_reg == 1'd1))
next_state = LEGUP_F_main_BB_dotloop_exitreduction_260;
else if ((main_dotloop_bodyreduction_exitcond_reg == 1'd0))
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_232;
LEGUP_F_main_BB_dotloop_bodyreductionlrph_231:
next_state = LEGUP_F_main_BB_dotloop_bodyreduction_232;
LEGUP_F_main_BB_dotloop_bodyreductionlrphpreheader_230:
next_state = LEGUP_F_main_BB_dotloop_bodyreductionlrph_231;
LEGUP_F_main_BB_dotloop_exitreduction_260:
next_state = LEGUP_F_main_BB_dotloop_exitreduction_261;
LEGUP_F_main_BB_dotloop_exitreduction_261:
if ((main_dotloop_exitreduction_exitcond7_reg == 1'd1))
next_state = LEGUP_F_main_BB_fusionloop_bodydim0preheader_262;
else if ((main_dotloop_exitreduction_exitcond7_reg == 1'd0))
next_state = LEGUP_F_main_BB_dotloop_bodyreductionlrph_231;
LEGUP_F_main_BB_fusion1loop_bodydim1_161:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_162;
LEGUP_F_main_BB_fusion1loop_bodydim1_162:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_163;
LEGUP_F_main_BB_fusion1loop_bodydim1_163:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_164;
LEGUP_F_main_BB_fusion1loop_bodydim1_164:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_165;
LEGUP_F_main_BB_fusion1loop_bodydim1_165:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_166;
LEGUP_F_main_BB_fusion1loop_bodydim1_166:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_167;
LEGUP_F_main_BB_fusion1loop_bodydim1_167:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_168;
LEGUP_F_main_BB_fusion1loop_bodydim1_168:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_169;
LEGUP_F_main_BB_fusion1loop_bodydim1_169:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_170;
LEGUP_F_main_BB_fusion1loop_bodydim1_170:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_171;
LEGUP_F_main_BB_fusion1loop_bodydim1_171:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_172;
LEGUP_F_main_BB_fusion1loop_bodydim1_172:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_173;
LEGUP_F_main_BB_fusion1loop_bodydim1_173:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_174;
LEGUP_F_main_BB_fusion1loop_bodydim1_174:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_175;
LEGUP_F_main_BB_fusion1loop_bodydim1_175:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_176;
LEGUP_F_main_BB_fusion1loop_bodydim1_176:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_177;
LEGUP_F_main_BB_fusion1loop_bodydim1_177:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_178;
LEGUP_F_main_BB_fusion1loop_bodydim1_178:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_179;
LEGUP_F_main_BB_fusion1loop_bodydim1_179:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_180;
LEGUP_F_main_BB_fusion1loop_bodydim1_180:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_181;
LEGUP_F_main_BB_fusion1loop_bodydim1_181:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_182;
LEGUP_F_main_BB_fusion1loop_bodydim1_182:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_183;
LEGUP_F_main_BB_fusion1loop_bodydim1_183:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_184;
LEGUP_F_main_BB_fusion1loop_bodydim1_184:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_185;
LEGUP_F_main_BB_fusion1loop_bodydim1_185:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_186;
LEGUP_F_main_BB_fusion1loop_bodydim1_186:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_187;
LEGUP_F_main_BB_fusion1loop_bodydim1_187:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_188;
LEGUP_F_main_BB_fusion1loop_bodydim1_188:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_189;
LEGUP_F_main_BB_fusion1loop_bodydim1_189:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_190;
LEGUP_F_main_BB_fusion1loop_bodydim1_190:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_191;
LEGUP_F_main_BB_fusion1loop_bodydim1_191:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_192;
LEGUP_F_main_BB_fusion1loop_bodydim1_192:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_193;
LEGUP_F_main_BB_fusion1loop_bodydim1_193:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_194;
LEGUP_F_main_BB_fusion1loop_bodydim1_194:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_195;
LEGUP_F_main_BB_fusion1loop_bodydim1_195:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_196;
LEGUP_F_main_BB_fusion1loop_bodydim1_196:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_197;
LEGUP_F_main_BB_fusion1loop_bodydim1_197:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_198;
LEGUP_F_main_BB_fusion1loop_bodydim1_198:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_199;
LEGUP_F_main_BB_fusion1loop_bodydim1_199:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_200;
LEGUP_F_main_BB_fusion1loop_bodydim1_200:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_201;
LEGUP_F_main_BB_fusion1loop_bodydim1_201:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_202;
LEGUP_F_main_BB_fusion1loop_bodydim1_202:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_203;
LEGUP_F_main_BB_fusion1loop_bodydim1_203:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_204;
LEGUP_F_main_BB_fusion1loop_bodydim1_204:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_205;
LEGUP_F_main_BB_fusion1loop_bodydim1_205:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_206;
LEGUP_F_main_BB_fusion1loop_bodydim1_206:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_207;
LEGUP_F_main_BB_fusion1loop_bodydim1_207:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_208;
LEGUP_F_main_BB_fusion1loop_bodydim1_208:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_209;
LEGUP_F_main_BB_fusion1loop_bodydim1_209:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_210;
LEGUP_F_main_BB_fusion1loop_bodydim1_210:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_211;
LEGUP_F_main_BB_fusion1loop_bodydim1_211:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_212;
LEGUP_F_main_BB_fusion1loop_bodydim1_212:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_213;
LEGUP_F_main_BB_fusion1loop_bodydim1_213:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_214;
LEGUP_F_main_BB_fusion1loop_bodydim1_214:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_215;
LEGUP_F_main_BB_fusion1loop_bodydim1_215:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_216;
LEGUP_F_main_BB_fusion1loop_bodydim1_216:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_217;
LEGUP_F_main_BB_fusion1loop_bodydim1_217:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_218;
LEGUP_F_main_BB_fusion1loop_bodydim1_218:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_219;
LEGUP_F_main_BB_fusion1loop_bodydim1_219:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_220;
LEGUP_F_main_BB_fusion1loop_bodydim1_220:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_221;
LEGUP_F_main_BB_fusion1loop_bodydim1_221:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_222;
LEGUP_F_main_BB_fusion1loop_bodydim1_222:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_223;
LEGUP_F_main_BB_fusion1loop_bodydim1_223:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_224;
LEGUP_F_main_BB_fusion1loop_bodydim1_224:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_225;
LEGUP_F_main_BB_fusion1loop_bodydim1_225:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_226;
LEGUP_F_main_BB_fusion1loop_bodydim1_226:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_227;
LEGUP_F_main_BB_fusion1loop_bodydim1_227:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_228;
LEGUP_F_main_BB_fusion1loop_bodydim1_228:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_229;
LEGUP_F_main_BB_fusion1loop_bodydim1_229:
if ((main_fusion1loop_bodydim1_exitcond10_reg == 1'd1))
next_state = LEGUP_F_main_BB_dotloop_bodyreductionlrphpreheader_230;
else if ((main_fusion1loop_bodydim1_exitcond10_reg == 1'd0))
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_161;
LEGUP_F_main_BB_fusion1loop_bodydim1preheader_160:
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1_161;
LEGUP_F_main_BB_fusion2loop_bodydim2lrph_123:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3lrph_124;
LEGUP_F_main_BB_fusion2loop_bodydim2lrphpreheader_122:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim2lrph_123;
LEGUP_F_main_BB_fusion2loop_bodydim3_125:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_126;
LEGUP_F_main_BB_fusion2loop_bodydim3_126:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_127;
LEGUP_F_main_BB_fusion2loop_bodydim3_127:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_128;
LEGUP_F_main_BB_fusion2loop_bodydim3_128:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_129;
LEGUP_F_main_BB_fusion2loop_bodydim3_129:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_130;
LEGUP_F_main_BB_fusion2loop_bodydim3_130:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_131;
LEGUP_F_main_BB_fusion2loop_bodydim3_131:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_132;
LEGUP_F_main_BB_fusion2loop_bodydim3_132:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_133;
LEGUP_F_main_BB_fusion2loop_bodydim3_133:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_134;
LEGUP_F_main_BB_fusion2loop_bodydim3_134:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_135;
LEGUP_F_main_BB_fusion2loop_bodydim3_135:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_136;
LEGUP_F_main_BB_fusion2loop_bodydim3_136:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_137;
LEGUP_F_main_BB_fusion2loop_bodydim3_137:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_138;
LEGUP_F_main_BB_fusion2loop_bodydim3_138:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_139;
LEGUP_F_main_BB_fusion2loop_bodydim3_139:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_140;
LEGUP_F_main_BB_fusion2loop_bodydim3_140:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_141;
LEGUP_F_main_BB_fusion2loop_bodydim3_141:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_142;
LEGUP_F_main_BB_fusion2loop_bodydim3_142:
if ((main_fusion2loop_bodydim3_exitcond25_reg == 1'd1))
next_state = LEGUP_F_main_BB_fusion2loop_exitdim3_143;
else if ((main_fusion2loop_bodydim3_exitcond25_reg == 1'd0))
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_125;
LEGUP_F_main_BB_fusion2loop_bodydim3lrph_124:
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3_125;
LEGUP_F_main_BB_fusion2loop_exitdim2_144:
if ((main_fusion2loop_exitdim2_exitcond32 == 1'd1))
next_state = LEGUP_F_main_BB_reducewindow1loop_bodydim2lrphpreheader_145;
else if ((main_fusion2loop_exitdim2_exitcond32 == 1'd0))
next_state = LEGUP_F_main_BB_fusion2loop_bodydim2lrph_123;
LEGUP_F_main_BB_fusion2loop_exitdim3_143:
if ((main_fusion2loop_exitdim3_exitcond29 == 1'd1))
next_state = LEGUP_F_main_BB_fusion2loop_exitdim2_144;
else if ((main_fusion2loop_exitdim3_exitcond29 == 1'd0))
next_state = LEGUP_F_main_BB_fusion2loop_bodydim3lrph_124;
LEGUP_F_main_BB_fusion3loop_bodydim2lrph_42:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3lrph_43;
LEGUP_F_main_BB_fusion3loop_bodydim2lrphpreheader_12:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim2lrph_42;
LEGUP_F_main_BB_fusion3loop_bodydim3_44:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_45;
LEGUP_F_main_BB_fusion3loop_bodydim3_45:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_46;
LEGUP_F_main_BB_fusion3loop_bodydim3_46:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_47;
LEGUP_F_main_BB_fusion3loop_bodydim3_47:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_48;
LEGUP_F_main_BB_fusion3loop_bodydim3_48:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_49;
LEGUP_F_main_BB_fusion3loop_bodydim3_49:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_50;
LEGUP_F_main_BB_fusion3loop_bodydim3_50:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_51;
LEGUP_F_main_BB_fusion3loop_bodydim3_51:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_52;
LEGUP_F_main_BB_fusion3loop_bodydim3_52:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_53;
LEGUP_F_main_BB_fusion3loop_bodydim3_53:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_54;
LEGUP_F_main_BB_fusion3loop_bodydim3_54:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_55;
LEGUP_F_main_BB_fusion3loop_bodydim3_55:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_56;
LEGUP_F_main_BB_fusion3loop_bodydim3_56:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_57;
LEGUP_F_main_BB_fusion3loop_bodydim3_57:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_58;
LEGUP_F_main_BB_fusion3loop_bodydim3_58:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_59;
LEGUP_F_main_BB_fusion3loop_bodydim3_59:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_60;
LEGUP_F_main_BB_fusion3loop_bodydim3_60:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_61;
LEGUP_F_main_BB_fusion3loop_bodydim3_61:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_62;
LEGUP_F_main_BB_fusion3loop_bodydim3_62:
if ((main_fusion3loop_bodydim3_exitcond81_reg == 1'd1))
next_state = LEGUP_F_main_BB_fusion3loop_exitdim3_63;
else if ((main_fusion3loop_bodydim3_exitcond81_reg == 1'd0))
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_44;
LEGUP_F_main_BB_fusion3loop_bodydim3lrph_43:
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3_44;
LEGUP_F_main_BB_fusion3loop_exitdim2_64:
if ((main_fusion3loop_exitdim2_exitcond88 == 1'd1))
next_state = LEGUP_F_main_BB_reducewindowloop_bodydim2lrphpreheader_65;
else if ((main_fusion3loop_exitdim2_exitcond88 == 1'd0))
next_state = LEGUP_F_main_BB_fusion3loop_bodydim2lrph_42;
LEGUP_F_main_BB_fusion3loop_exitdim3_63:
if ((main_fusion3loop_exitdim3_exitcond85 == 1'd1))
next_state = LEGUP_F_main_BB_fusion3loop_exitdim2_64;
else if ((main_fusion3loop_exitdim3_exitcond85 == 1'd0))
next_state = LEGUP_F_main_BB_fusion3loop_bodydim3lrph_43;
LEGUP_F_main_BB_fusionloop_bodydim0_263:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_264;
LEGUP_F_main_BB_fusionloop_bodydim0_264:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_265;
LEGUP_F_main_BB_fusionloop_bodydim0_265:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_266;
LEGUP_F_main_BB_fusionloop_bodydim0_266:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_267;
LEGUP_F_main_BB_fusionloop_bodydim0_267:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_268;
LEGUP_F_main_BB_fusionloop_bodydim0_268:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_269;
LEGUP_F_main_BB_fusionloop_bodydim0_269:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_270;
LEGUP_F_main_BB_fusionloop_bodydim0_270:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_271;
LEGUP_F_main_BB_fusionloop_bodydim0_271:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_272;
LEGUP_F_main_BB_fusionloop_bodydim0_272:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_273;
LEGUP_F_main_BB_fusionloop_bodydim0_273:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_274;
LEGUP_F_main_BB_fusionloop_bodydim0_274:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_275;
LEGUP_F_main_BB_fusionloop_bodydim0_275:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_276;
LEGUP_F_main_BB_fusionloop_bodydim0_276:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_277;
LEGUP_F_main_BB_fusionloop_bodydim0_277:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_278;
LEGUP_F_main_BB_fusionloop_bodydim0_278:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_279;
LEGUP_F_main_BB_fusionloop_bodydim0_279:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_280;
LEGUP_F_main_BB_fusionloop_bodydim0_280:
if ((main_fusionloop_bodydim0_exitcond2_reg == 1'd1))
next_state = LEGUP_F_main_BB_fusionloop_exitdim0_281;
else if ((main_fusionloop_bodydim0_exitcond2_reg == 1'd0))
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_263;
LEGUP_F_main_BB_fusionloop_bodydim0preheader_262:
next_state = LEGUP_F_main_BB_fusionloop_bodydim0_263;
LEGUP_F_main_BB_fusionloop_exitdim0_281:
next_state = LEGUP_F_main_BB_fusionloop_exitdim0_282;
LEGUP_F_main_BB_fusionloop_exitdim0_282:
next_state = LEGUP_F_main_BB_fusionloop_exitdim0_283;
LEGUP_F_main_BB_fusionloop_exitdim0_283:
next_state = LEGUP_0;
LEGUP_F_main_BB_inboundsafter32us_100:
next_state = LEGUP_F_main_BB_inboundsafter32us_101;
LEGUP_F_main_BB_inboundsafter32us_101:
next_state = LEGUP_F_main_BB_inboundsafter32us_102;
LEGUP_F_main_BB_inboundsafter32us_102:
next_state = LEGUP_F_main_BB_inboundsafter32us_103;
LEGUP_F_main_BB_inboundsafter32us_103:
next_state = LEGUP_F_main_BB_inboundsafter32us_104;
LEGUP_F_main_BB_inboundsafter32us_104:
next_state = LEGUP_F_main_BB_inboundsafter32us_105;
LEGUP_F_main_BB_inboundsafter32us_105:
next_state = LEGUP_F_main_BB_inboundsafter32us_106;
LEGUP_F_main_BB_inboundsafter32us_106:
next_state = LEGUP_F_main_BB_inboundsafter32us_107;
LEGUP_F_main_BB_inboundsafter32us_107:
next_state = LEGUP_F_main_BB_inboundsafter32us_108;
LEGUP_F_main_BB_inboundsafter32us_108:
next_state = LEGUP_F_main_BB_inboundsafter32us_109;
LEGUP_F_main_BB_inboundsafter32us_109:
next_state = LEGUP_F_main_BB_inboundsafter32us_110;
LEGUP_F_main_BB_inboundsafter32us_110:
next_state = LEGUP_F_main_BB_inboundsafter32us_111;
LEGUP_F_main_BB_inboundsafter32us_111:
next_state = LEGUP_F_main_BB_inboundsafter32us_112;
LEGUP_F_main_BB_inboundsafter32us_112:
next_state = LEGUP_F_main_BB_inboundsafter32us_113;
LEGUP_F_main_BB_inboundsafter32us_113:
next_state = LEGUP_F_main_BB_inboundsafter32us_114;
LEGUP_F_main_BB_inboundsafter32us_114:
if ((main_inboundsafter32us_exitcond50_reg == 1'd1))
next_state = LEGUP_F_main_BB_convolution1innerloop_exitizloopexit_115;
else if ((main_inboundsafter32us_exitcond50_reg == 1'd0))
next_state = LEGUP_F_main_BB_inboundsafter32us_87;
LEGUP_F_main_BB_inboundsafter32us_87:
next_state = LEGUP_F_main_BB_inboundsafter32us_88;
LEGUP_F_main_BB_inboundsafter32us_88:
next_state = LEGUP_F_main_BB_inboundsafter32us_89;
LEGUP_F_main_BB_inboundsafter32us_89:
next_state = LEGUP_F_main_BB_inboundsafter32us_90;
LEGUP_F_main_BB_inboundsafter32us_90:
next_state = LEGUP_F_main_BB_inboundsafter32us_91;
LEGUP_F_main_BB_inboundsafter32us_91:
next_state = LEGUP_F_main_BB_inboundsafter32us_92;
LEGUP_F_main_BB_inboundsafter32us_92:
next_state = LEGUP_F_main_BB_inboundsafter32us_93;
LEGUP_F_main_BB_inboundsafter32us_93:
next_state = LEGUP_F_main_BB_inboundsafter32us_94;
LEGUP_F_main_BB_inboundsafter32us_94:
next_state = LEGUP_F_main_BB_inboundsafter32us_95;
LEGUP_F_main_BB_inboundsafter32us_95:
next_state = LEGUP_F_main_BB_inboundsafter32us_96;
LEGUP_F_main_BB_inboundsafter32us_96:
next_state = LEGUP_F_main_BB_inboundsafter32us_97;
LEGUP_F_main_BB_inboundsafter32us_97:
next_state = LEGUP_F_main_BB_inboundsafter32us_98;
LEGUP_F_main_BB_inboundsafter32us_98:
next_state = LEGUP_F_main_BB_inboundsafter32us_99;
LEGUP_F_main_BB_inboundsafter32us_99:
next_state = LEGUP_F_main_BB_inboundsafter32us_100;
LEGUP_F_main_BB_inboundsafter32uspreheader_86:
next_state = LEGUP_F_main_BB_inboundsafter32us_87;
LEGUP_F_main_BB_inboundstrue_13:
next_state = LEGUP_F_main_BB_inboundstrue_14;
LEGUP_F_main_BB_inboundstrue_14:
next_state = LEGUP_F_main_BB_inboundstrue_15;
LEGUP_F_main_BB_inboundstrue_15:
next_state = LEGUP_F_main_BB_inboundstrue_16;
LEGUP_F_main_BB_inboundstrue_16:
next_state = LEGUP_F_main_BB_inboundstrue_17;
LEGUP_F_main_BB_inboundstrue_17:
next_state = LEGUP_F_main_BB_inboundstrue_18;
LEGUP_F_main_BB_inboundstrue_18:
next_state = LEGUP_F_main_BB_inboundstrue_19;
LEGUP_F_main_BB_inboundstrue_19:
next_state = LEGUP_F_main_BB_inboundstrue_20;
LEGUP_F_main_BB_inboundstrue_20:
next_state = LEGUP_F_main_BB_inboundstrue_21;
LEGUP_F_main_BB_inboundstrue_21:
next_state = LEGUP_F_main_BB_inboundstrue_22;
LEGUP_F_main_BB_inboundstrue_22:
next_state = LEGUP_F_main_BB_inboundstrue_23;
LEGUP_F_main_BB_inboundstrue_23:
next_state = LEGUP_F_main_BB_inboundstrue_24;
LEGUP_F_main_BB_inboundstrue_24:
next_state = LEGUP_F_main_BB_inboundstrue_25;
LEGUP_F_main_BB_inboundstrue_25:
next_state = LEGUP_F_main_BB_inboundstrue_26;
LEGUP_F_main_BB_inboundstrue_26:
next_state = LEGUP_F_main_BB_inboundstrue_27;
LEGUP_F_main_BB_inboundstrue_27:
next_state = LEGUP_F_main_BB_inboundstrue_28;
LEGUP_F_main_BB_inboundstrue_28:
next_state = LEGUP_F_main_BB_inboundstrue_29;
LEGUP_F_main_BB_inboundstrue_29:
next_state = LEGUP_F_main_BB_inboundstrue_30;
LEGUP_F_main_BB_inboundstrue_30:
next_state = LEGUP_F_main_BB_inboundstrue_31;
LEGUP_F_main_BB_inboundstrue_31:
next_state = LEGUP_F_main_BB_inboundstrue_32;
LEGUP_F_main_BB_inboundstrue_32:
next_state = LEGUP_F_main_BB_inboundstrue_33;
LEGUP_F_main_BB_inboundstrue_33:
next_state = LEGUP_F_main_BB_inboundstrue_34;
LEGUP_F_main_BB_inboundstrue_34:
next_state = LEGUP_F_main_BB_inboundstrue_35;
LEGUP_F_main_BB_inboundstrue_35:
next_state = LEGUP_F_main_BB_inboundstrue_36;
LEGUP_F_main_BB_inboundstrue_36:
next_state = LEGUP_F_main_BB_inboundstrue_37;
LEGUP_F_main_BB_inboundstrue_37:
next_state = LEGUP_F_main_BB_inboundstrue_38;
LEGUP_F_main_BB_inboundstrue_38:
next_state = LEGUP_F_main_BB_inboundstrue_39;
LEGUP_F_main_BB_inboundstrue_39:
next_state = LEGUP_F_main_BB_inboundstrue_40;
LEGUP_F_main_BB_inboundstrue_40:
next_state = LEGUP_F_main_BB_inboundstrue_41;
LEGUP_F_main_BB_inboundstrue_41:
next_state = LEGUP_F_main_BB_convolutioninnerloop_exitiz_6;
LEGUP_F_main_BB_reducewindow1innerloop_bodywindow1lrph_148:
next_state = LEGUP_F_main_BB_reducewindow1innerloop_bodywindow3lrphuspreheader_149;
LEGUP_F_main_BB_reducewindow1innerloop_bodywindow3lrphuspreheader_149:
next_state = LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_150;
LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156:
next_state = LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_157;
LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_157:
if ((main_reducewindow1innerloop_exitwindow0_exitcond16_reg == 1'd1))
next_state = LEGUP_F_main_BB_reducewindow1loop_exitdim3_158;
else if ((main_reducewindow1innerloop_exitwindow0_exitcond16_reg == 1'd0))
next_state = LEGUP_F_main_BB_reducewindow1innerloop_bodywindow1lrph_148;
LEGUP_F_main_BB_reducewindow1innerloop_exitwindow2_155:
if ((main_reducewindow1innerloop_exitwindow2_exitcond14 == 1'd1))
next_state = LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156;
else if ((main_reducewindow1innerloop_exitwindow2_exitcond14 == 1'd0))
next_state = LEGUP_F_main_BB_reducewindow1innerloop_bodywindow3lrphuspreheader_149;
LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_150:
next_state = LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_151;
LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_151:
next_state = LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_152;
LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_152:
next_state = LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_153;
LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_153:
next_state = LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_154;
LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_154:
if ((main_reducewindow1innerloop_exitwindow3us_exitcond12_reg == 1'd1))
next_state = LEGUP_F_main_BB_reducewindow1innerloop_exitwindow2_155;
else if ((main_reducewindow1innerloop_exitwindow3us_exitcond12_reg == 1'd0))
next_state = LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_150;
LEGUP_F_main_BB_reducewindow1loop_bodydim2lrph_146:
next_state = LEGUP_F_main_BB_reducewindow1loop_bodydim3lrph_147;
LEGUP_F_main_BB_reducewindow1loop_bodydim2lrphpreheader_145:
next_state = LEGUP_F_main_BB_reducewindow1loop_bodydim2lrph_146;
LEGUP_F_main_BB_reducewindow1loop_bodydim3lrph_147:
next_state = LEGUP_F_main_BB_reducewindow1innerloop_bodywindow1lrph_148;
LEGUP_F_main_BB_reducewindow1loop_exitdim2_159:
if ((main_reducewindow1loop_exitdim2_exitcond22 == 1'd1))
next_state = LEGUP_F_main_BB_fusion1loop_bodydim1preheader_160;
else if ((main_reducewindow1loop_exitdim2_exitcond22 == 1'd0))
next_state = LEGUP_F_main_BB_reducewindow1loop_bodydim2lrph_146;
LEGUP_F_main_BB_reducewindow1loop_exitdim3_158:
if ((main_reducewindow1loop_exitdim3_exitcond19 == 1'd1))
next_state = LEGUP_F_main_BB_reducewindow1loop_exitdim2_159;
else if ((main_reducewindow1loop_exitdim3_exitcond19 == 1'd0))
next_state = LEGUP_F_main_BB_reducewindow1loop_bodydim3lrph_147;
LEGUP_F_main_BB_reducewindowinnerloop_bodywindow1lrph_68:
next_state = LEGUP_F_main_BB_reducewindowinnerloop_bodywindow2lrph_69;
LEGUP_F_main_BB_reducewindowinnerloop_bodywindow2lrph_69:
next_state = LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_70;
LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76:
next_state = LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_77;
LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_77:
if ((main_reducewindowinnerloop_exitwindow0_exitcond72_reg == 1'd1))
next_state = LEGUP_F_main_BB_reducewindowloop_exitdim3_78;
else if ((main_reducewindowinnerloop_exitwindow0_exitcond72_reg == 1'd0))
next_state = LEGUP_F_main_BB_reducewindowinnerloop_bodywindow1lrph_68;
LEGUP_F_main_BB_reducewindowinnerloop_exitwindow2_75:
if ((main_reducewindowinnerloop_exitwindow2_exitcond70 == 1'd1))
next_state = LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76;
else if ((main_reducewindowinnerloop_exitwindow2_exitcond70 == 1'd0))
next_state = LEGUP_F_main_BB_reducewindowinnerloop_bodywindow2lrph_69;
LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_70:
next_state = LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_71;
LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_71:
next_state = LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_72;
LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_72:
next_state = LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_73;
LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_73:
next_state = LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_74;
LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_74:
if ((main_reducewindowinnerloop_exitwindow3_exitcond68_reg == 1'd1))
next_state = LEGUP_F_main_BB_reducewindowinnerloop_exitwindow2_75;
else if ((main_reducewindowinnerloop_exitwindow3_exitcond68_reg == 1'd0))
next_state = LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_70;
LEGUP_F_main_BB_reducewindowloop_bodydim2lrph_66:
next_state = LEGUP_F_main_BB_reducewindowloop_bodydim3lrph_67;
LEGUP_F_main_BB_reducewindowloop_bodydim2lrphpreheader_65:
next_state = LEGUP_F_main_BB_reducewindowloop_bodydim2lrph_66;
LEGUP_F_main_BB_reducewindowloop_bodydim3lrph_67:
next_state = LEGUP_F_main_BB_reducewindowinnerloop_bodywindow1lrph_68;
LEGUP_F_main_BB_reducewindowloop_exitdim2_79:
if ((main_reducewindowloop_exitdim2_exitcond78 == 1'd1))
next_state = LEGUP_F_main_BB_convolution1loop_bodydim2lrphpreheader_80;
else if ((main_reducewindowloop_exitdim2_exitcond78 == 1'd0))
next_state = LEGUP_F_main_BB_reducewindowloop_bodydim2lrph_66;
LEGUP_F_main_BB_reducewindowloop_exitdim3_78:
if ((main_reducewindowloop_exitdim3_exitcond75 == 1'd1))
next_state = LEGUP_F_main_BB_reducewindowloop_exitdim2_79;
else if ((main_reducewindowloop_exitdim3_exitcond75 == 1'd0))
next_state = LEGUP_F_main_BB_reducewindowloop_bodydim3lrph_67;
default:
next_state = cur_state;
endcase
end
always @(*) begin
/* main: %convolution.loop_body.dim.2.lr.ph*/
/* %convolution.indvar.dim.1121 = phi i64 [ 0, %convolution.loop_body.dim.1.lr.ph ], [ %18, %convolution.loop_exit.dim.2 ]*/
if ((((cur_state == LEGUP_0) & (memory_controller_waitrequest == 1'd0)) & (start == 1'd1))) begin
main_convolutionloop_bodydim2lrph_convolutionindvardim1121 = 64'd0;
end
/* main: %convolution.loop_body.dim.2.lr.ph*/
/* %convolution.indvar.dim.1121 = phi i64 [ 0, %convolution.loop_body.dim.1.lr.ph ], [ %18, %convolution.loop_exit.dim.2 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolutionloop_exitdim2_11) & (memory_controller_waitrequest == 1'd0)) & (main_convolutionloop_exitdim2_exitcond103 == 1'd0))) */ begin
main_convolutionloop_bodydim2lrph_convolutionindvardim1121 = main_convolutionloop_exitdim2_18;
end
end
always @(posedge clk) begin
/* main: %convolution.loop_body.dim.2.lr.ph*/
/* %convolution.indvar.dim.1121 = phi i64 [ 0, %convolution.loop_body.dim.1.lr.ph ], [ %18, %convolution.loop_exit.dim.2 ]*/
if ((((cur_state == LEGUP_0) & (memory_controller_waitrequest == 1'd0)) & (start == 1'd1))) begin
main_convolutionloop_bodydim2lrph_convolutionindvardim1121_reg <= main_convolutionloop_bodydim2lrph_convolutionindvardim1121;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutionloop_bodydim2lrph_convolutionindvardim1121) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutionloop_bodydim2lrph_convolutionindvardim1121_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.loop_body.dim.2.lr.ph*/
/* %convolution.indvar.dim.1121 = phi i64 [ 0, %convolution.loop_body.dim.1.lr.ph ], [ %18, %convolution.loop_exit.dim.2 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutionloop_exitdim2_11) & (memory_controller_waitrequest == 1'd0)) & (main_convolutionloop_exitdim2_exitcond103 == 1'd0))) begin
main_convolutionloop_bodydim2lrph_convolutionindvardim1121_reg <= main_convolutionloop_bodydim2lrph_convolutionindvardim1121;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutionloop_bodydim2lrph_convolutionindvardim1121) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutionloop_bodydim2lrph_convolutionindvardim1121_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.loop_body.dim.2.lr.ph*/
/* %0 = add i64 %convolution.indvar.dim.1121, -2*/
main_convolutionloop_bodydim2lrph_0 = (main_convolutionloop_bodydim2lrph_convolutionindvardim1121_reg + -64'd2);
end
always @(posedge clk) begin
/* main: %convolution.loop_body.dim.2.lr.ph*/
/* %0 = add i64 %convolution.indvar.dim.1121, -2*/
if ((cur_state == LEGUP_F_main_BB_convolutionloop_bodydim2lrph_1)) begin
main_convolutionloop_bodydim2lrph_0_reg <= main_convolutionloop_bodydim2lrph_0;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutionloop_bodydim2lrph_0) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutionloop_bodydim2lrph_0_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.loop_body.dim.3.lr.ph*/
/* %convolution.indvar.dim.2118 = phi i64 [ 0, %convolution.loop_body.dim.2.lr.ph ], [ %17, %convolution.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutionloop_bodydim2lrph_1) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutionloop_bodydim3lrph_convolutionindvardim2118 = 64'd0;
end
/* main: %convolution.loop_body.dim.3.lr.ph*/
/* %convolution.indvar.dim.2118 = phi i64 [ 0, %convolution.loop_body.dim.2.lr.ph ], [ %17, %convolution.loop_exit.dim.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolutionloop_exitdim3_10) & (memory_controller_waitrequest == 1'd0)) & (main_convolutionloop_exitdim3_exitcond100 == 1'd0))) */ begin
main_convolutionloop_bodydim3lrph_convolutionindvardim2118 = main_convolutionloop_exitdim3_17;
end
end
always @(posedge clk) begin
/* main: %convolution.loop_body.dim.3.lr.ph*/
/* %convolution.indvar.dim.2118 = phi i64 [ 0, %convolution.loop_body.dim.2.lr.ph ], [ %17, %convolution.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutionloop_bodydim2lrph_1) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutionloop_bodydim3lrph_convolutionindvardim2118_reg <= main_convolutionloop_bodydim3lrph_convolutionindvardim2118;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutionloop_bodydim3lrph_convolutionindvardim2118) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutionloop_bodydim3lrph_convolutionindvardim2118_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.loop_body.dim.3.lr.ph*/
/* %convolution.indvar.dim.2118 = phi i64 [ 0, %convolution.loop_body.dim.2.lr.ph ], [ %17, %convolution.loop_exit.dim.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutionloop_exitdim3_10) & (memory_controller_waitrequest == 1'd0)) & (main_convolutionloop_exitdim3_exitcond100 == 1'd0))) begin
main_convolutionloop_bodydim3lrph_convolutionindvardim2118_reg <= main_convolutionloop_bodydim3lrph_convolutionindvardim2118;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutionloop_bodydim3lrph_convolutionindvardim2118) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutionloop_bodydim3lrph_convolutionindvardim2118_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.loop_body.dim.3.lr.ph*/
/* %1 = add i64 %convolution.indvar.dim.2118, -2*/
main_convolutionloop_bodydim3lrph_1 = (main_convolutionloop_bodydim3lrph_convolutionindvardim2118_reg + -64'd2);
end
always @(posedge clk) begin
/* main: %convolution.loop_body.dim.3.lr.ph*/
/* %1 = add i64 %convolution.indvar.dim.2118, -2*/
if ((cur_state == LEGUP_F_main_BB_convolutionloop_bodydim3lrph_2)) begin
main_convolutionloop_bodydim3lrph_1_reg <= main_convolutionloop_bodydim3lrph_1;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutionloop_bodydim3lrph_1) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutionloop_bodydim3lrph_1_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.loop_body.dim.3.lr.ph*/
/* %2 = add i64 %convolution.indvar.dim.2118, -2*/
main_convolutionloop_bodydim3lrph_2 = (main_convolutionloop_bodydim3lrph_convolutionindvardim2118_reg + -64'd2);
end
always @(posedge clk) begin
/* main: %convolution.loop_body.dim.3.lr.ph*/
/* %2 = add i64 %convolution.indvar.dim.2118, -2*/
if ((cur_state == LEGUP_F_main_BB_convolutionloop_bodydim3lrph_2)) begin
main_convolutionloop_bodydim3lrph_2_reg <= main_convolutionloop_bodydim3lrph_2;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutionloop_bodydim3lrph_2) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutionloop_bodydim3lrph_2_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.k0.lr.ph*/
/* %convolution.indvar.dim.3115 = phi i64 [ 0, %convolution.loop_body.dim.3.lr.ph ], [ %16, %convolution.inner.loop_exit.k0 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutionloop_bodydim3lrph_2) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115 = 64'd0;
end
/* main: %convolution.inner.loop_body.k0.lr.ph*/
/* %convolution.indvar.dim.3115 = phi i64 [ 0, %convolution.loop_body.dim.3.lr.ph ], [ %16, %convolution.inner.loop_exit.k0 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk0_9) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitk0_exitcond97_reg == 1'd0))) */ begin
main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115 = main_convolutioninnerloop_exitk0_16_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.k0.lr.ph*/
/* %convolution.indvar.dim.3115 = phi i64 [ 0, %convolution.loop_body.dim.3.lr.ph ], [ %16, %convolution.inner.loop_exit.k0 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutionloop_bodydim3lrph_2) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115_reg <= main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.inner.loop_body.k0.lr.ph*/
/* %convolution.indvar.dim.3115 = phi i64 [ 0, %convolution.loop_body.dim.3.lr.ph ], [ %16, %convolution.inner.loop_exit.k0 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk0_9) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitk0_exitcond97_reg == 1'd0))) begin
main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115_reg <= main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.k0.lr.ph*/
/* %scevgep99 = getelementptr [1 x [28 x [28 x [8 x float]]]]* @temp0, i64 0, i64 0, i64 %convolution.indvar.dim.1121, i64 %convolution.indvar.dim.2118, i64 %convolution.indvar.dim.3115*/
main_convolutioninnerloop_bodyk0lrph_scevgep99 = (`TAG_g_temp0_a + (((64'd896 * main_convolutionloop_bodydim2lrph_convolutionindvardim1121_reg) + (64'd32 * main_convolutionloop_bodydim3lrph_convolutionindvardim2118_reg)) + (64'd4 * main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115_reg)));
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.k0.lr.ph*/
/* %scevgep99 = getelementptr [1 x [28 x [28 x [8 x float]]]]* @temp0, i64 0, i64 0, i64 %convolution.indvar.dim.1121, i64 %convolution.indvar.dim.2118, i64 %convolution.indvar.dim.3115*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3)) begin
main_convolutioninnerloop_bodyk0lrph_scevgep99_reg <= main_convolutioninnerloop_bodyk0lrph_scevgep99;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk0lrph_scevgep99) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk0lrph_scevgep99_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %3 = phi float [ 0.000000e+00, %convolution.inner.loop_body.k0.lr.ph ], [ %12, %convolution.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyk1lrph_3 = 32'h0;
end
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %3 = phi float [ 0.000000e+00, %convolution.inner.loop_body.k0.lr.ph ], [ %12, %convolution.inner.loop_exit.k1 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk1_7) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitk1_exitcond94 == 1'd0))) */ begin
main_convolutioninnerloop_bodyk1lrph_3 = main_convolutioninnerloop_exitiz_12_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %3 = phi float [ 0.000000e+00, %convolution.inner.loop_body.k0.lr.ph ], [ %12, %convolution.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyk1lrph_3_reg <= main_convolutioninnerloop_bodyk1lrph_3;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk1lrph_3) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk1lrph_3_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %3 = phi float [ 0.000000e+00, %convolution.inner.loop_body.k0.lr.ph ], [ %12, %convolution.inner.loop_exit.k1 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk1_7) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitk1_exitcond94 == 1'd0))) begin
main_convolutioninnerloop_bodyk1lrph_3_reg <= main_convolutioninnerloop_bodyk1lrph_3;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk1lrph_3) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk1lrph_3_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %4 = phi float [ 0.000000e+00, %convolution.inner.loop_body.k0.lr.ph ], [ %13, %convolution.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyk1lrph_4 = 32'h0;
end
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %4 = phi float [ 0.000000e+00, %convolution.inner.loop_body.k0.lr.ph ], [ %13, %convolution.inner.loop_exit.k1 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk1_7) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitk1_exitcond94 == 1'd0))) */ begin
main_convolutioninnerloop_bodyk1lrph_4 = main_convolutioninnerloop_exitiz_13_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %4 = phi float [ 0.000000e+00, %convolution.inner.loop_body.k0.lr.ph ], [ %13, %convolution.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyk1lrph_4_reg <= main_convolutioninnerloop_bodyk1lrph_4;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk1lrph_4) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk1lrph_4_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %4 = phi float [ 0.000000e+00, %convolution.inner.loop_body.k0.lr.ph ], [ %13, %convolution.inner.loop_exit.k1 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk1_7) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitk1_exitcond94 == 1'd0))) begin
main_convolutioninnerloop_bodyk1lrph_4_reg <= main_convolutioninnerloop_bodyk1lrph_4;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk1lrph_4) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk1lrph_4_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %convolution.inner.indvar.k0112 = phi i64 [ 0, %convolution.inner.loop_body.k0.lr.ph ], [ %15, %convolution.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112 = 64'd0;
end
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %convolution.inner.indvar.k0112 = phi i64 [ 0, %convolution.inner.loop_body.k0.lr.ph ], [ %15, %convolution.inner.loop_exit.k1 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk1_7) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitk1_exitcond94 == 1'd0))) */ begin
main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112 = main_convolutioninnerloop_exitk1_15;
end
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %convolution.inner.indvar.k0112 = phi i64 [ 0, %convolution.inner.loop_body.k0.lr.ph ], [ %15, %convolution.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk0lrph_3) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112_reg <= main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %convolution.inner.indvar.k0112 = phi i64 [ 0, %convolution.inner.loop_body.k0.lr.ph ], [ %15, %convolution.inner.loop_exit.k1 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk1_7) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitk1_exitcond94 == 1'd0))) begin
main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112_reg <= main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %5 = add i64 %0, %convolution.inner.indvar.k0112*/
main_convolutioninnerloop_bodyk1lrph_5 = (main_convolutionloop_bodydim2lrph_0_reg + main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112_reg);
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %5 = add i64 %0, %convolution.inner.indvar.k0112*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4)) begin
main_convolutioninnerloop_bodyk1lrph_5_reg <= main_convolutioninnerloop_bodyk1lrph_5;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk1lrph_5) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk1lrph_5_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %6 = icmp ult i64 %5, 28*/
main_convolutioninnerloop_bodyk1lrph_6 = (main_convolutioninnerloop_bodyk1lrph_5 < 64'd28);
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.k1.lr.ph*/
/* %6 = icmp ult i64 %5, 28*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4)) begin
main_convolutioninnerloop_bodyk1lrph_6_reg <= main_convolutioninnerloop_bodyk1lrph_6;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyk1lrph_6) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyk1lrph_6_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.iz*/
/* %7 = phi float [ %3, %convolution.inner.loop_body.k1.lr.ph ], [ %12, %convolution.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyiz_7 = main_convolutioninnerloop_bodyk1lrph_3_reg;
end
/* main: %convolution.inner.loop_body.iz*/
/* %7 = phi float [ %3, %convolution.inner.loop_body.k1.lr.ph ], [ %12, %convolution.inner.loop_exit.iz ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitiz_6) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitiz_exitcond91 == 1'd0))) */ begin
main_convolutioninnerloop_bodyiz_7 = main_convolutioninnerloop_exitiz_12_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.iz*/
/* %7 = phi float [ %3, %convolution.inner.loop_body.k1.lr.ph ], [ %12, %convolution.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyiz_7_reg <= main_convolutioninnerloop_bodyiz_7;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyiz_7) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyiz_7_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.inner.loop_body.iz*/
/* %7 = phi float [ %3, %convolution.inner.loop_body.k1.lr.ph ], [ %12, %convolution.inner.loop_exit.iz ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitiz_6) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitiz_exitcond91 == 1'd0))) begin
main_convolutioninnerloop_bodyiz_7_reg <= main_convolutioninnerloop_bodyiz_7;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyiz_7) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyiz_7_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.iz*/
/* %8 = phi float [ %4, %convolution.inner.loop_body.k1.lr.ph ], [ %13, %convolution.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyiz_8 = main_convolutioninnerloop_bodyk1lrph_4_reg;
end
/* main: %convolution.inner.loop_body.iz*/
/* %8 = phi float [ %4, %convolution.inner.loop_body.k1.lr.ph ], [ %13, %convolution.inner.loop_exit.iz ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitiz_6) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitiz_exitcond91 == 1'd0))) */ begin
main_convolutioninnerloop_bodyiz_8 = main_convolutioninnerloop_exitiz_13_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.iz*/
/* %8 = phi float [ %4, %convolution.inner.loop_body.k1.lr.ph ], [ %13, %convolution.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyiz_8_reg <= main_convolutioninnerloop_bodyiz_8;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyiz_8) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyiz_8_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.inner.loop_body.iz*/
/* %8 = phi float [ %4, %convolution.inner.loop_body.k1.lr.ph ], [ %13, %convolution.inner.loop_exit.iz ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitiz_6) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitiz_exitcond91 == 1'd0))) begin
main_convolutioninnerloop_bodyiz_8_reg <= main_convolutioninnerloop_bodyiz_8;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyiz_8) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyiz_8_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.iz*/
/* %convolution.inner.indvar.k1109 = phi i64 [ 0, %convolution.inner.loop_body.k1.lr.ph ], [ %14, %convolution.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109 = 64'd0;
end
/* main: %convolution.inner.loop_body.iz*/
/* %convolution.inner.indvar.k1109 = phi i64 [ 0, %convolution.inner.loop_body.k1.lr.ph ], [ %14, %convolution.inner.loop_exit.iz ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitiz_6) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitiz_exitcond91 == 1'd0))) */ begin
main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109 = main_convolutioninnerloop_exitiz_14;
end
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_body.iz*/
/* %convolution.inner.indvar.k1109 = phi i64 [ 0, %convolution.inner.loop_body.k1.lr.ph ], [ %14, %convolution.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyk1lrph_4) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109_reg <= main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.inner.loop_body.iz*/
/* %convolution.inner.indvar.k1109 = phi i64 [ 0, %convolution.inner.loop_body.k1.lr.ph ], [ %14, %convolution.inner.loop_exit.iz ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitiz_6) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_exitiz_exitcond91 == 1'd0))) begin
main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109_reg <= main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_body.iz*/
/* %9 = add i64 %2, %convolution.inner.indvar.k1109*/
main_convolutioninnerloop_bodyiz_9 = (main_convolutionloop_bodydim3lrph_2_reg + main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109_reg);
end
always @(*) begin
/* main: %convolution.inner.loop_body.iz*/
/* %10 = icmp ult i64 %9, 28*/
main_convolutioninnerloop_bodyiz_10 = (main_convolutioninnerloop_bodyiz_9 < 64'd28);
end
always @(*) begin
/* main: %convolution.inner.loop_body.iz*/
/* %11 = and i1 %6, %10*/
main_convolutioninnerloop_bodyiz_11 = (main_convolutioninnerloop_bodyk1lrph_6_reg & main_convolutioninnerloop_bodyiz_10);
end
always @(*) begin
/* main: %convolution.inner.loop_exit.iz*/
/* %12 = phi float [ %7, %convolution.inner.loop_body.iz ], [ %23, %in-bounds-true ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyiz_5) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_bodyiz_11 == 1'd0))) begin
main_convolutioninnerloop_exitiz_12 = main_convolutioninnerloop_bodyiz_7_reg;
end
/* main: %convolution.inner.loop_exit.iz*/
/* %12 = phi float [ %7, %convolution.inner.loop_body.iz ], [ %23, %in-bounds-true ]*/
else /* if (((cur_state == LEGUP_F_main_BB_inboundstrue_41) & (memory_controller_waitrequest == 1'd0))) */ begin
main_convolutioninnerloop_exitiz_12 = main_inboundstrue_23;
end
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_exit.iz*/
/* %12 = phi float [ %7, %convolution.inner.loop_body.iz ], [ %23, %in-bounds-true ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyiz_5) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_bodyiz_11 == 1'd0))) begin
main_convolutioninnerloop_exitiz_12_reg <= main_convolutioninnerloop_exitiz_12;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_exitiz_12) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_exitiz_12_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.inner.loop_exit.iz*/
/* %12 = phi float [ %7, %convolution.inner.loop_body.iz ], [ %23, %in-bounds-true ]*/
if (((cur_state == LEGUP_F_main_BB_inboundstrue_41) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_exitiz_12_reg <= main_convolutioninnerloop_exitiz_12;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_exitiz_12) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_exitiz_12_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_exit.iz*/
/* %13 = phi float [ %8, %convolution.inner.loop_body.iz ], [ %23, %in-bounds-true ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyiz_5) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_bodyiz_11 == 1'd0))) begin
main_convolutioninnerloop_exitiz_13 = main_convolutioninnerloop_bodyiz_8_reg;
end
/* main: %convolution.inner.loop_exit.iz*/
/* %13 = phi float [ %8, %convolution.inner.loop_body.iz ], [ %23, %in-bounds-true ]*/
else /* if (((cur_state == LEGUP_F_main_BB_inboundstrue_41) & (memory_controller_waitrequest == 1'd0))) */ begin
main_convolutioninnerloop_exitiz_13 = main_inboundstrue_23;
end
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_exit.iz*/
/* %13 = phi float [ %8, %convolution.inner.loop_body.iz ], [ %23, %in-bounds-true ]*/
if ((((cur_state == LEGUP_F_main_BB_convolutioninnerloop_bodyiz_5) & (memory_controller_waitrequest == 1'd0)) & (main_convolutioninnerloop_bodyiz_11 == 1'd0))) begin
main_convolutioninnerloop_exitiz_13_reg <= main_convolutioninnerloop_exitiz_13;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_exitiz_13) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_exitiz_13_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.inner.loop_exit.iz*/
/* %13 = phi float [ %8, %convolution.inner.loop_body.iz ], [ %23, %in-bounds-true ]*/
if (((cur_state == LEGUP_F_main_BB_inboundstrue_41) & (memory_controller_waitrequest == 1'd0))) begin
main_convolutioninnerloop_exitiz_13_reg <= main_convolutioninnerloop_exitiz_13;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_exitiz_13) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_exitiz_13_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_exit.iz*/
/* %14 = add nuw nsw i64 %convolution.inner.indvar.k1109, 1*/
main_convolutioninnerloop_exitiz_14 = (main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109_reg + 64'd1);
end
always @(*) begin
/* main: %convolution.inner.loop_exit.iz*/
/* %exitcond91 = icmp eq i64 %14, 5*/
main_convolutioninnerloop_exitiz_exitcond91 = (main_convolutioninnerloop_exitiz_14 == 64'd5);
end
always @(*) begin
/* main: %convolution.inner.loop_exit.k1*/
/* %15 = add nuw nsw i64 %convolution.inner.indvar.k0112, 1*/
main_convolutioninnerloop_exitk1_15 = (main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112_reg + 64'd1);
end
always @(*) begin
/* main: %convolution.inner.loop_exit.k1*/
/* %exitcond94 = icmp eq i64 %15, 5*/
main_convolutioninnerloop_exitk1_exitcond94 = (main_convolutioninnerloop_exitk1_15 == 64'd5);
end
always @(*) begin
/* main: %convolution.inner.loop_exit.k0*/
/* %16 = add nuw nsw i64 %convolution.indvar.dim.3115, 1*/
main_convolutioninnerloop_exitk0_16 = (main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_exit.k0*/
/* %16 = add nuw nsw i64 %convolution.indvar.dim.3115, 1*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk0_8)) begin
main_convolutioninnerloop_exitk0_16_reg <= main_convolutioninnerloop_exitk0_16;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_exitk0_16) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_exitk0_16_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.inner.loop_exit.k0*/
/* %exitcond97 = icmp eq i64 %16, 8*/
main_convolutioninnerloop_exitk0_exitcond97 = (main_convolutioninnerloop_exitk0_16 == 64'd8);
end
always @(posedge clk) begin
/* main: %convolution.inner.loop_exit.k0*/
/* %exitcond97 = icmp eq i64 %16, 8*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk0_8)) begin
main_convolutioninnerloop_exitk0_exitcond97_reg <= main_convolutioninnerloop_exitk0_exitcond97;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolutioninnerloop_exitk0_exitcond97) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolutioninnerloop_exitk0_exitcond97_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.loop_exit.dim.3*/
/* %17 = add nuw nsw i64 %convolution.indvar.dim.2118, 1*/
main_convolutionloop_exitdim3_17 = (main_convolutionloop_bodydim3lrph_convolutionindvardim2118_reg + 64'd1);
end
always @(*) begin
/* main: %convolution.loop_exit.dim.3*/
/* %exitcond100 = icmp eq i64 %17, 28*/
main_convolutionloop_exitdim3_exitcond100 = (main_convolutionloop_exitdim3_17 == 64'd28);
end
always @(*) begin
/* main: %convolution.loop_exit.dim.2*/
/* %18 = add nuw nsw i64 %convolution.indvar.dim.1121, 1*/
main_convolutionloop_exitdim2_18 = (main_convolutionloop_bodydim2lrph_convolutionindvardim1121_reg + 64'd1);
end
always @(*) begin
/* main: %convolution.loop_exit.dim.2*/
/* %exitcond103 = icmp eq i64 %18, 28*/
main_convolutionloop_exitdim2_exitcond103 = (main_convolutionloop_exitdim2_18 == 64'd28);
end
always @(*) begin
/* main: %in-bounds-true*/
/* %scevgep92 = getelementptr [5 x [5 x [1 x [8 x float]]]]* @param0, i64 0, i64 %convolution.inner.indvar.k0112, i64 %convolution.inner.indvar.k1109, i64 0, i64 %convolution.indvar.dim.3115*/
main_inboundstrue_scevgep92 = (`TAG_g_param0_a + (((64'd160 * main_convolutioninnerloop_bodyk1lrph_convolutioninnerindvark0112_reg) + (64'd32 * main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109_reg)) + (64'd4 * main_convolutioninnerloop_bodyk0lrph_convolutionindvardim3115_reg)));
end
always @(*) begin
/* main: %in-bounds-true*/
/* %19 = add i64 %1, %convolution.inner.indvar.k1109*/
main_inboundstrue_19 = (main_convolutionloop_bodydim3lrph_1_reg + main_convolutioninnerloop_bodyiz_convolutioninnerindvark1109_reg);
end
always @(posedge clk) begin
/* main: %in-bounds-true*/
/* %19 = add i64 %1, %convolution.inner.indvar.k1109*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_13)) begin
main_inboundstrue_19_reg <= main_inboundstrue_19;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundstrue_19) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_inboundstrue_19_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %in-bounds-true*/
/* %scevgep93 = getelementptr [1 x [28 x [28 x [1 x float]]]]* @param1, i64 0, i64 0, i64 %5, i64 %19, i64 0*/
main_inboundstrue_scevgep93 = (`TAG_g_param1_a + ((64'd112 * main_convolutioninnerloop_bodyk1lrph_5_reg) + (64'd4 * main_inboundstrue_19_reg)));
end
always @(*) begin
/* main: %in-bounds-true*/
/* %20 = load volatile float* %scevgep92, align 4*/
main_inboundstrue_20 = memory_controller_out_a[31:0];
end
always @(posedge clk) begin
/* main: %in-bounds-true*/
/* %20 = load volatile float* %scevgep92, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_15)) begin
main_inboundstrue_20_reg <= main_inboundstrue_20;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundstrue_20) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_inboundstrue_20_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %in-bounds-true*/
/* %21 = load volatile float* %scevgep93, align 4*/
main_inboundstrue_21 = memory_controller_out_a[31:0];
end
always @(*) begin
main_inboundstrue_22 = main_altfp_multiply_32_0;
end
always @(*) begin
main_inboundstrue_23 = main_altfp_add_32_0;
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.2.lr.ph*/
/* %fusion.3.indvar.dim.1103 = phi i64 [ %31, %fusion.3.loop_exit.dim.2 ], [ 0, %fusion.3.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim2lrphpreheader_12) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion3loop_bodydim2lrph_fusion3indvardim1103 = 64'd0;
end
/* main: %fusion.3.loop_body.dim.2.lr.ph*/
/* %fusion.3.indvar.dim.1103 = phi i64 [ %31, %fusion.3.loop_exit.dim.2 ], [ 0, %fusion.3.loop_body.dim.2.lr.ph.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_fusion3loop_exitdim2_64) & (memory_controller_waitrequest == 1'd0)) & (main_fusion3loop_exitdim2_exitcond88 == 1'd0))) */ begin
main_fusion3loop_bodydim2lrph_fusion3indvardim1103 = main_fusion3loop_exitdim2_31;
end
end
always @(posedge clk) begin
/* main: %fusion.3.loop_body.dim.2.lr.ph*/
/* %fusion.3.indvar.dim.1103 = phi i64 [ %31, %fusion.3.loop_exit.dim.2 ], [ 0, %fusion.3.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim2lrphpreheader_12) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion3loop_bodydim2lrph_fusion3indvardim1103_reg <= main_fusion3loop_bodydim2lrph_fusion3indvardim1103;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim2lrph_fusion3indvardim1103) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim2lrph_fusion3indvardim1103_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.3.loop_body.dim.2.lr.ph*/
/* %fusion.3.indvar.dim.1103 = phi i64 [ %31, %fusion.3.loop_exit.dim.2 ], [ 0, %fusion.3.loop_body.dim.2.lr.ph.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_fusion3loop_exitdim2_64) & (memory_controller_waitrequest == 1'd0)) & (main_fusion3loop_exitdim2_exitcond88 == 1'd0))) begin
main_fusion3loop_bodydim2lrph_fusion3indvardim1103_reg <= main_fusion3loop_bodydim2lrph_fusion3indvardim1103;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim2lrph_fusion3indvardim1103) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim2lrph_fusion3indvardim1103_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3.lr.ph*/
/* %fusion.3.indvar.dim.2101 = phi i64 [ 0, %fusion.3.loop_body.dim.2.lr.ph ], [ %30, %fusion.3.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim2lrph_42) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion3loop_bodydim3lrph_fusion3indvardim2101 = 64'd0;
end
/* main: %fusion.3.loop_body.dim.3.lr.ph*/
/* %fusion.3.indvar.dim.2101 = phi i64 [ 0, %fusion.3.loop_body.dim.2.lr.ph ], [ %30, %fusion.3.loop_exit.dim.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_fusion3loop_exitdim3_63) & (memory_controller_waitrequest == 1'd0)) & (main_fusion3loop_exitdim3_exitcond85 == 1'd0))) */ begin
main_fusion3loop_bodydim3lrph_fusion3indvardim2101 = main_fusion3loop_exitdim3_30;
end
end
always @(posedge clk) begin
/* main: %fusion.3.loop_body.dim.3.lr.ph*/
/* %fusion.3.indvar.dim.2101 = phi i64 [ 0, %fusion.3.loop_body.dim.2.lr.ph ], [ %30, %fusion.3.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim2lrph_42) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion3loop_bodydim3lrph_fusion3indvardim2101_reg <= main_fusion3loop_bodydim3lrph_fusion3indvardim2101;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim3lrph_fusion3indvardim2101) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3lrph_fusion3indvardim2101_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.3.loop_body.dim.3.lr.ph*/
/* %fusion.3.indvar.dim.2101 = phi i64 [ 0, %fusion.3.loop_body.dim.2.lr.ph ], [ %30, %fusion.3.loop_exit.dim.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_fusion3loop_exitdim3_63) & (memory_controller_waitrequest == 1'd0)) & (main_fusion3loop_exitdim3_exitcond85 == 1'd0))) begin
main_fusion3loop_bodydim3lrph_fusion3indvardim2101_reg <= main_fusion3loop_bodydim3lrph_fusion3indvardim2101;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim3lrph_fusion3indvardim2101) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3lrph_fusion3indvardim2101_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %fusion.3.indvar.dim.399 = phi i64 [ 0, %fusion.3.loop_body.dim.3.lr.ph ], [ %29, %fusion.3.loop_body.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3lrph_43) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion3loop_bodydim3_fusion3indvardim399 = 64'd0;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %fusion.3.indvar.dim.399 = phi i64 [ 0, %fusion.3.loop_body.dim.3.lr.ph ], [ %29, %fusion.3.loop_body.dim.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_62) & (memory_controller_waitrequest == 1'd0)) & (main_fusion3loop_bodydim3_exitcond81_reg == 1'd0))) */ begin
main_fusion3loop_bodydim3_fusion3indvardim399 = main_fusion3loop_bodydim3_29_reg;
end
end
always @(posedge clk) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %fusion.3.indvar.dim.399 = phi i64 [ 0, %fusion.3.loop_body.dim.3.lr.ph ], [ %29, %fusion.3.loop_body.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3lrph_43) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion3loop_bodydim3_fusion3indvardim399_reg <= main_fusion3loop_bodydim3_fusion3indvardim399;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim3_fusion3indvardim399) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_fusion3indvardim399_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.3.loop_body.dim.3*/
/* %fusion.3.indvar.dim.399 = phi i64 [ 0, %fusion.3.loop_body.dim.3.lr.ph ], [ %29, %fusion.3.loop_body.dim.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_62) & (memory_controller_waitrequest == 1'd0)) & (main_fusion3loop_bodydim3_exitcond81_reg == 1'd0))) begin
main_fusion3loop_bodydim3_fusion3indvardim399_reg <= main_fusion3loop_bodydim3_fusion3indvardim399;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim3_fusion3indvardim399) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_fusion3indvardim399_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %scevgep82 = getelementptr [1 x [28 x [28 x [8 x float]]]]* @temp1, i64 0, i64 0, i64 %fusion.3.indvar.dim.1103, i64 %fusion.3.indvar.dim.2101, i64 %fusion.3.indvar.dim.399*/
main_fusion3loop_bodydim3_scevgep82 = (`TAG_g_temp1_a + (((64'd896 * main_fusion3loop_bodydim2lrph_fusion3indvardim1103_reg) + (64'd32 * main_fusion3loop_bodydim3lrph_fusion3indvardim2101_reg)) + (64'd4 * main_fusion3loop_bodydim3_fusion3indvardim399_reg)));
end
always @(posedge clk) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %scevgep82 = getelementptr [1 x [28 x [28 x [8 x float]]]]* @temp1, i64 0, i64 0, i64 %fusion.3.indvar.dim.1103, i64 %fusion.3.indvar.dim.2101, i64 %fusion.3.indvar.dim.399*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
main_fusion3loop_bodydim3_scevgep82_reg <= main_fusion3loop_bodydim3_scevgep82;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim3_scevgep82) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_scevgep82_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %scevgep84 = getelementptr [1 x [28 x [28 x [8 x float]]]]* @temp0, i64 0, i64 0, i64 %fusion.3.indvar.dim.1103, i64 %fusion.3.indvar.dim.2101, i64 %fusion.3.indvar.dim.399*/
main_fusion3loop_bodydim3_scevgep84 = (`TAG_g_temp0_a + (((64'd896 * main_fusion3loop_bodydim2lrph_fusion3indvardim1103_reg) + (64'd32 * main_fusion3loop_bodydim3lrph_fusion3indvardim2101_reg)) + (64'd4 * main_fusion3loop_bodydim3_fusion3indvardim399_reg)));
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %scevgep83 = getelementptr [8 x float]* @param2, i64 0, i64 %fusion.3.indvar.dim.399*/
main_fusion3loop_bodydim3_scevgep83 = (`TAG_g_param2_a + (64'd4 * main_fusion3loop_bodydim3_fusion3indvardim399_reg));
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %24 = load float* %scevgep84, align 4*/
main_fusion3loop_bodydim3_24 = memory_controller_out_a[31:0];
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %25 = load volatile float* %scevgep83, align 4*/
main_fusion3loop_bodydim3_25 = memory_controller_out_b[31:0];
end
always @(*) begin
main_fusion3loop_bodydim3_26 = main_altfp_add_32_0;
end
always @(posedge clk) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %26 = fadd float %24, %25*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_60)) begin
main_fusion3loop_bodydim3_26_reg <= main_fusion3loop_bodydim3_26;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim3_26) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_26_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.3.loop_body.dim.3*/
/* %26 = fadd float %24, %25*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_60)) begin
main_fusion3loop_bodydim3_26_reg <= main_fusion3loop_bodydim3_26;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim3_26) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_26_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %in-bounds-true*/
/* %23 = fadd float %7, %22*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_41)) begin
main_fusion3loop_bodydim3_26_reg <= main_inboundstrue_23;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundstrue_23) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_26_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.2.loop_body.dim.3*/
/* %76 = fadd float %74, %75*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_141)) begin
main_fusion3loop_bodydim3_26_reg <= main_fusion2loop_bodydim3_76;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim3_76) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_26_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.loop_body.dim.0*/
/* %115 = fadd float %113, %114*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_279)) begin
main_fusion3loop_bodydim3_26_reg <= main_fusionloop_bodydim0_115;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusionloop_bodydim0_115) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_26_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %in-bounds-after32.us*/
/* %65 = fadd float %61, %64*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_114)) begin
main_fusion3loop_bodydim3_26_reg <= main_inboundsafter32us_65;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundsafter32us_65) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_26_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
main_fusion3loop_bodydim3_27 = altfp_compare32_1_main_fusion3loop_bodydim3_27_out;
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %28 = select i1 %27, float 0.000000e+00, float %26*/
main_fusion3loop_bodydim3_28 = (main_fusion3loop_bodydim3_27 ? 32'h0 : main_fusion3loop_bodydim3_26_reg);
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %29 = add nuw nsw i64 %fusion.3.indvar.dim.399, 1*/
main_fusion3loop_bodydim3_29 = (main_fusion3loop_bodydim3_fusion3indvardim399_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %29 = add nuw nsw i64 %fusion.3.indvar.dim.399, 1*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
main_fusion3loop_bodydim3_29_reg <= main_fusion3loop_bodydim3_29;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim3_29) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_29_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %exitcond81 = icmp eq i64 %29, 8*/
main_fusion3loop_bodydim3_exitcond81 = (main_fusion3loop_bodydim3_29 == 64'd8);
end
always @(posedge clk) begin
/* main: %fusion.3.loop_body.dim.3*/
/* %exitcond81 = icmp eq i64 %29, 8*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
main_fusion3loop_bodydim3_exitcond81_reg <= main_fusion3loop_bodydim3_exitcond81;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion3loop_bodydim3_exitcond81) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion3loop_bodydim3_exitcond81_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.3.loop_exit.dim.3*/
/* %30 = add nuw nsw i64 %fusion.3.indvar.dim.2101, 1*/
main_fusion3loop_exitdim3_30 = (main_fusion3loop_bodydim3lrph_fusion3indvardim2101_reg + 64'd1);
end
always @(*) begin
/* main: %fusion.3.loop_exit.dim.3*/
/* %exitcond85 = icmp eq i64 %30, 28*/
main_fusion3loop_exitdim3_exitcond85 = (main_fusion3loop_exitdim3_30 == 64'd28);
end
always @(*) begin
/* main: %fusion.3.loop_exit.dim.2*/
/* %31 = add nuw nsw i64 %fusion.3.indvar.dim.1103, 1*/
main_fusion3loop_exitdim2_31 = (main_fusion3loop_bodydim2lrph_fusion3indvardim1103_reg + 64'd1);
end
always @(*) begin
/* main: %fusion.3.loop_exit.dim.2*/
/* %exitcond88 = icmp eq i64 %31, 28*/
main_fusion3loop_exitdim2_exitcond88 = (main_fusion3loop_exitdim2_31 == 64'd28);
end
always @(*) begin
/* main: %reduce-window.loop_body.dim.2.lr.ph*/
/* %reduce-window.indvar.dim.194 = phi i64 [ %47, %reduce-window.loop_exit.dim.2 ], [ 0, %reduce-window.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowloop_bodydim2lrphpreheader_65) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowloop_bodydim2lrph_reducewindowindvardim194 = 64'd0;
end
/* main: %reduce-window.loop_body.dim.2.lr.ph*/
/* %reduce-window.indvar.dim.194 = phi i64 [ %47, %reduce-window.loop_exit.dim.2 ], [ 0, %reduce-window.loop_body.dim.2.lr.ph.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindowloop_exitdim2_79) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowloop_exitdim2_exitcond78 == 1'd0))) */ begin
main_reducewindowloop_bodydim2lrph_reducewindowindvardim194 = main_reducewindowloop_exitdim2_47;
end
end
always @(posedge clk) begin
/* main: %reduce-window.loop_body.dim.2.lr.ph*/
/* %reduce-window.indvar.dim.194 = phi i64 [ %47, %reduce-window.loop_exit.dim.2 ], [ 0, %reduce-window.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowloop_bodydim2lrphpreheader_65) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowloop_bodydim2lrph_reducewindowindvardim194_reg <= main_reducewindowloop_bodydim2lrph_reducewindowindvardim194;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowloop_bodydim2lrph_reducewindowindvardim194) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowloop_bodydim2lrph_reducewindowindvardim194_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.loop_body.dim.2.lr.ph*/
/* %reduce-window.indvar.dim.194 = phi i64 [ %47, %reduce-window.loop_exit.dim.2 ], [ 0, %reduce-window.loop_body.dim.2.lr.ph.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindowloop_exitdim2_79) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowloop_exitdim2_exitcond78 == 1'd0))) begin
main_reducewindowloop_bodydim2lrph_reducewindowindvardim194_reg <= main_reducewindowloop_bodydim2lrph_reducewindowindvardim194;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowloop_bodydim2lrph_reducewindowindvardim194) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowloop_bodydim2lrph_reducewindowindvardim194_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.loop_body.dim.2.lr.ph*/
/* %32 = shl i64 %reduce-window.indvar.dim.194, 1*/
main_reducewindowloop_bodydim2lrph_32 = (main_reducewindowloop_bodydim2lrph_reducewindowindvardim194_reg <<< (64'd1 % 64'd64));
end
always @(posedge clk) begin
/* main: %reduce-window.loop_body.dim.2.lr.ph*/
/* %32 = shl i64 %reduce-window.indvar.dim.194, 1*/
if ((cur_state == LEGUP_F_main_BB_reducewindowloop_bodydim2lrph_66)) begin
main_reducewindowloop_bodydim2lrph_32_reg <= main_reducewindowloop_bodydim2lrph_32;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowloop_bodydim2lrph_32) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowloop_bodydim2lrph_32_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.loop_body.dim.3.lr.ph*/
/* %reduce-window.indvar.dim.292 = phi i64 [ 0, %reduce-window.loop_body.dim.2.lr.ph ], [ %46, %reduce-window.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowloop_bodydim2lrph_66) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowloop_bodydim3lrph_reducewindowindvardim292 = 64'd0;
end
/* main: %reduce-window.loop_body.dim.3.lr.ph*/
/* %reduce-window.indvar.dim.292 = phi i64 [ 0, %reduce-window.loop_body.dim.2.lr.ph ], [ %46, %reduce-window.loop_exit.dim.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindowloop_exitdim3_78) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowloop_exitdim3_exitcond75 == 1'd0))) */ begin
main_reducewindowloop_bodydim3lrph_reducewindowindvardim292 = main_reducewindowloop_exitdim3_46;
end
end
always @(posedge clk) begin
/* main: %reduce-window.loop_body.dim.3.lr.ph*/
/* %reduce-window.indvar.dim.292 = phi i64 [ 0, %reduce-window.loop_body.dim.2.lr.ph ], [ %46, %reduce-window.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowloop_bodydim2lrph_66) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowloop_bodydim3lrph_reducewindowindvardim292_reg <= main_reducewindowloop_bodydim3lrph_reducewindowindvardim292;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowloop_bodydim3lrph_reducewindowindvardim292) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowloop_bodydim3lrph_reducewindowindvardim292_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.loop_body.dim.3.lr.ph*/
/* %reduce-window.indvar.dim.292 = phi i64 [ 0, %reduce-window.loop_body.dim.2.lr.ph ], [ %46, %reduce-window.loop_exit.dim.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindowloop_exitdim3_78) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowloop_exitdim3_exitcond75 == 1'd0))) begin
main_reducewindowloop_bodydim3lrph_reducewindowindvardim292_reg <= main_reducewindowloop_bodydim3lrph_reducewindowindvardim292;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowloop_bodydim3lrph_reducewindowindvardim292) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowloop_bodydim3lrph_reducewindowindvardim292_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.loop_body.dim.3.lr.ph*/
/* %33 = shl i64 %reduce-window.indvar.dim.292, 1*/
main_reducewindowloop_bodydim3lrph_33 = (main_reducewindowloop_bodydim3lrph_reducewindowindvardim292_reg <<< (64'd1 % 64'd64));
end
always @(posedge clk) begin
/* main: %reduce-window.loop_body.dim.3.lr.ph*/
/* %33 = shl i64 %reduce-window.indvar.dim.292, 1*/
if ((cur_state == LEGUP_F_main_BB_reducewindowloop_bodydim3lrph_67)) begin
main_reducewindowloop_bodydim3lrph_33_reg <= main_reducewindowloop_bodydim3lrph_33;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowloop_bodydim3lrph_33) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowloop_bodydim3lrph_33_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_body.window.1.lr.ph*/
/* %reduce-window.indvar.dim.389 = phi i64 [ 0, %reduce-window.loop_body.dim.3.lr.ph ], [ %45, %reduce-window.inner.loop_exit.window.0 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowloop_bodydim3lrph_67) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389 = 64'd0;
end
/* main: %reduce-window.inner.loop_body.window.1.lr.ph*/
/* %reduce-window.indvar.dim.389 = phi i64 [ 0, %reduce-window.loop_body.dim.3.lr.ph ], [ %45, %reduce-window.inner.loop_exit.window.0 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_77) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow0_exitcond72_reg == 1'd0))) */ begin
main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389 = main_reducewindowinnerloop_exitwindow0_45_reg;
end
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_body.window.1.lr.ph*/
/* %reduce-window.indvar.dim.389 = phi i64 [ 0, %reduce-window.loop_body.dim.3.lr.ph ], [ %45, %reduce-window.inner.loop_exit.window.0 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowloop_bodydim3lrph_67) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389_reg <= main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.inner.loop_body.window.1.lr.ph*/
/* %reduce-window.indvar.dim.389 = phi i64 [ 0, %reduce-window.loop_body.dim.3.lr.ph ], [ %45, %reduce-window.inner.loop_exit.window.0 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_77) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow0_exitcond72_reg == 1'd0))) begin
main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389_reg <= main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_body.window.1.lr.ph*/
/* %scevgep74 = getelementptr [1 x [14 x [14 x [8 x float]]]]* @temp2, i64 0, i64 0, i64 %reduce-window.indvar.dim.194, i64 %reduce-window.indvar.dim.292, i64 %reduce-window.indvar.dim.389*/
main_reducewindowinnerloop_bodywindow1lrph_scevgep74 = (`TAG_g_temp2_a + (((64'd448 * main_reducewindowloop_bodydim2lrph_reducewindowindvardim194_reg) + (64'd32 * main_reducewindowloop_bodydim3lrph_reducewindowindvardim292_reg)) + (64'd4 * main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389_reg)));
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_body.window.1.lr.ph*/
/* %scevgep74 = getelementptr [1 x [14 x [14 x [8 x float]]]]* @temp2, i64 0, i64 0, i64 %reduce-window.indvar.dim.194, i64 %reduce-window.indvar.dim.292, i64 %reduce-window.indvar.dim.389*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow1lrph_68)) begin
main_reducewindowinnerloop_bodywindow1lrph_scevgep74_reg <= main_reducewindowinnerloop_bodywindow1lrph_scevgep74;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_bodywindow1lrph_scevgep74) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_bodywindow1lrph_scevgep74_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %34 = phi float [ 0xFFF0000000000000, %reduce-window.inner.loop_body.window.1.lr.ph ], [ %44, %reduce-window.inner.loop_exit.window.2 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow1lrph_68) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_bodywindow2lrph_34 = 32'hFF800000;
end
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %34 = phi float [ 0xFFF0000000000000, %reduce-window.inner.loop_body.window.1.lr.ph ], [ %44, %reduce-window.inner.loop_exit.window.2 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow2_75) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow2_exitcond70 == 1'd0))) */ begin
main_reducewindowinnerloop_bodywindow2lrph_34 = main_reducewindowinnerloop_exitwindow3_44_reg;
end
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %34 = phi float [ 0xFFF0000000000000, %reduce-window.inner.loop_body.window.1.lr.ph ], [ %44, %reduce-window.inner.loop_exit.window.2 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow1lrph_68) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_bodywindow2lrph_34_reg <= main_reducewindowinnerloop_bodywindow2lrph_34;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_bodywindow2lrph_34) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_bodywindow2lrph_34_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %34 = phi float [ 0xFFF0000000000000, %reduce-window.inner.loop_body.window.1.lr.ph ], [ %44, %reduce-window.inner.loop_exit.window.2 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow2_75) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow2_exitcond70 == 1'd0))) begin
main_reducewindowinnerloop_bodywindow2lrph_34_reg <= main_reducewindowinnerloop_bodywindow2lrph_34;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_bodywindow2lrph_34) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_bodywindow2lrph_34_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %35 = phi i64 [ 0, %reduce-window.inner.loop_body.window.1.lr.ph ], [ %invar.inc16, %reduce-window.inner.loop_exit.window.2 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow1lrph_68) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_bodywindow2lrph_35 = 64'd0;
end
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %35 = phi i64 [ 0, %reduce-window.inner.loop_body.window.1.lr.ph ], [ %invar.inc16, %reduce-window.inner.loop_exit.window.2 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow2_75) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow2_exitcond70 == 1'd0))) */ begin
main_reducewindowinnerloop_bodywindow2lrph_35 = main_reducewindowinnerloop_exitwindow2_invarinc16;
end
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %35 = phi i64 [ 0, %reduce-window.inner.loop_body.window.1.lr.ph ], [ %invar.inc16, %reduce-window.inner.loop_exit.window.2 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow1lrph_68) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_bodywindow2lrph_35_reg <= main_reducewindowinnerloop_bodywindow2lrph_35;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_bodywindow2lrph_35) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_bodywindow2lrph_35_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %35 = phi i64 [ 0, %reduce-window.inner.loop_body.window.1.lr.ph ], [ %invar.inc16, %reduce-window.inner.loop_exit.window.2 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow2_75) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow2_exitcond70 == 1'd0))) begin
main_reducewindowinnerloop_bodywindow2lrph_35_reg <= main_reducewindowinnerloop_bodywindow2lrph_35;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_bodywindow2lrph_35) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_bodywindow2lrph_35_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %36 = add i64 %32, %35*/
main_reducewindowinnerloop_bodywindow2lrph_36 = (main_reducewindowloop_bodydim2lrph_32_reg + main_reducewindowinnerloop_bodywindow2lrph_35_reg);
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_body.window.2.lr.ph*/
/* %36 = add i64 %32, %35*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow2lrph_69)) begin
main_reducewindowinnerloop_bodywindow2lrph_36_reg <= main_reducewindowinnerloop_bodywindow2lrph_36;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_bodywindow2lrph_36) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_bodywindow2lrph_36_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %37 = phi float [ %34, %reduce-window.inner.loop_body.window.2.lr.ph ], [ %44, %reduce-window.inner.loop_exit.window.3 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow2lrph_69) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_exitwindow3_37 = main_reducewindowinnerloop_bodywindow2lrph_34_reg;
end
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %37 = phi float [ %34, %reduce-window.inner.loop_body.window.2.lr.ph ], [ %44, %reduce-window.inner.loop_exit.window.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_74) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow3_exitcond68_reg == 1'd0))) */ begin
main_reducewindowinnerloop_exitwindow3_37 = main_reducewindowinnerloop_exitwindow3_44;
end
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %37 = phi float [ %34, %reduce-window.inner.loop_body.window.2.lr.ph ], [ %44, %reduce-window.inner.loop_exit.window.3 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow2lrph_69) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_exitwindow3_37_reg <= main_reducewindowinnerloop_exitwindow3_37;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_37) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_37_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %37 = phi float [ %34, %reduce-window.inner.loop_body.window.2.lr.ph ], [ %44, %reduce-window.inner.loop_exit.window.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_74) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow3_exitcond68_reg == 1'd0))) begin
main_reducewindowinnerloop_exitwindow3_37_reg <= main_reducewindowinnerloop_exitwindow3_37;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_37) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_37_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %38 = phi i64 [ 0, %reduce-window.inner.loop_body.window.2.lr.ph ], [ %invar.inc17, %reduce-window.inner.loop_exit.window.3 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow2lrph_69) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_exitwindow3_38 = 64'd0;
end
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %38 = phi i64 [ 0, %reduce-window.inner.loop_body.window.2.lr.ph ], [ %invar.inc17, %reduce-window.inner.loop_exit.window.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_74) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow3_exitcond68_reg == 1'd0))) */ begin
main_reducewindowinnerloop_exitwindow3_38 = main_reducewindowinnerloop_exitwindow3_invarinc17_reg;
end
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %38 = phi i64 [ 0, %reduce-window.inner.loop_body.window.2.lr.ph ], [ %invar.inc17, %reduce-window.inner.loop_exit.window.3 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_bodywindow2lrph_69) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindowinnerloop_exitwindow3_38_reg <= main_reducewindowinnerloop_exitwindow3_38;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_38) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_38_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %38 = phi i64 [ 0, %reduce-window.inner.loop_body.window.2.lr.ph ], [ %invar.inc17, %reduce-window.inner.loop_exit.window.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_74) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindowinnerloop_exitwindow3_exitcond68_reg == 1'd0))) begin
main_reducewindowinnerloop_exitwindow3_38_reg <= main_reducewindowinnerloop_exitwindow3_38;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_38) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_38_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %39 = add i64 %33, %38*/
main_reducewindowinnerloop_exitwindow3_39 = (main_reducewindowloop_bodydim3lrph_33_reg + main_reducewindowinnerloop_exitwindow3_38_reg);
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %39 = add i64 %33, %38*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_70)) begin
main_reducewindowinnerloop_exitwindow3_39_reg <= main_reducewindowinnerloop_exitwindow3_39;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_39) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_39_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %scevgep69 = getelementptr [1 x [28 x [28 x [8 x float]]]]* @temp1, i64 0, i64 0, i64 %36, i64 %39, i64 %reduce-window.indvar.dim.389*/
main_reducewindowinnerloop_exitwindow3_scevgep69 = (`TAG_g_temp1_a + (((64'd896 * main_reducewindowinnerloop_bodywindow2lrph_36_reg) + (64'd32 * main_reducewindowinnerloop_exitwindow3_39_reg)) + (64'd4 * main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389_reg)));
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %40 = load float* %scevgep69, align 4*/
main_reducewindowinnerloop_exitwindow3_40 = memory_controller_out_b[31:0];
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %40 = load float* %scevgep69, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_73)) begin
main_reducewindowinnerloop_exitwindow3_40_reg <= main_reducewindowinnerloop_exitwindow3_40;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_40) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_40_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
main_reducewindowinnerloop_exitwindow3_41 = altfp_compare32_1_main_reducewindowinnerloop_exitwindow3_41_out;
end
always @(*) begin
main_reducewindowinnerloop_exitwindow3_42 = altfp_compare32_1_main_reducewindowinnerloop_exitwindow3_42_out;
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %42 = fcmp ueq float %37, 0.000000e+00*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_71)) begin
main_reducewindowinnerloop_exitwindow3_42_reg <= main_reducewindowinnerloop_exitwindow3_42;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_42) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_42_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %42 = fcmp ueq float %37, 0.000000e+00*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_71)) begin
main_reducewindowinnerloop_exitwindow3_42_reg <= main_reducewindowinnerloop_exitwindow3_42;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_42) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_42_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %43 = or i1 %41, %42*/
main_reducewindowinnerloop_exitwindow3_43 = (main_reducewindowinnerloop_exitwindow3_41 | main_reducewindowinnerloop_exitwindow3_42_reg);
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %44 = select i1 %43, float %37, float %40*/
main_reducewindowinnerloop_exitwindow3_44 = (main_reducewindowinnerloop_exitwindow3_43 ? main_reducewindowinnerloop_exitwindow3_37_reg : main_reducewindowinnerloop_exitwindow3_40_reg);
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %44 = select i1 %43, float %37, float %40*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_74)) begin
main_reducewindowinnerloop_exitwindow3_44_reg <= main_reducewindowinnerloop_exitwindow3_44;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_44) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_44_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %invar.inc17 = add nuw nsw i64 %38, 1*/
main_reducewindowinnerloop_exitwindow3_invarinc17 = (main_reducewindowinnerloop_exitwindow3_38_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %invar.inc17 = add nuw nsw i64 %38, 1*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_70)) begin
main_reducewindowinnerloop_exitwindow3_invarinc17_reg <= main_reducewindowinnerloop_exitwindow3_invarinc17;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_invarinc17) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_invarinc17_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %exitcond68 = icmp eq i64 %invar.inc17, 2*/
main_reducewindowinnerloop_exitwindow3_exitcond68 = (main_reducewindowinnerloop_exitwindow3_invarinc17 == 64'd2);
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %exitcond68 = icmp eq i64 %invar.inc17, 2*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_70)) begin
main_reducewindowinnerloop_exitwindow3_exitcond68_reg <= main_reducewindowinnerloop_exitwindow3_exitcond68;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow3_exitcond68) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow3_exitcond68_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.2*/
/* %invar.inc16 = add nuw nsw i64 %35, 1*/
main_reducewindowinnerloop_exitwindow2_invarinc16 = (main_reducewindowinnerloop_bodywindow2lrph_35_reg + 64'd1);
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.2*/
/* %exitcond70 = icmp eq i64 %invar.inc16, 2*/
main_reducewindowinnerloop_exitwindow2_exitcond70 = (main_reducewindowinnerloop_exitwindow2_invarinc16 == 64'd2);
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.0*/
/* %45 = add nuw nsw i64 %reduce-window.indvar.dim.389, 1*/
main_reducewindowinnerloop_exitwindow0_45 = (main_reducewindowinnerloop_bodywindow1lrph_reducewindowindvardim389_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.0*/
/* %45 = add nuw nsw i64 %reduce-window.indvar.dim.389, 1*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76)) begin
main_reducewindowinnerloop_exitwindow0_45_reg <= main_reducewindowinnerloop_exitwindow0_45;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow0_45) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow0_45_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.inner.loop_exit.window.0*/
/* %exitcond72 = icmp eq i64 %45, 8*/
main_reducewindowinnerloop_exitwindow0_exitcond72 = (main_reducewindowinnerloop_exitwindow0_45 == 64'd8);
end
always @(posedge clk) begin
/* main: %reduce-window.inner.loop_exit.window.0*/
/* %exitcond72 = icmp eq i64 %45, 8*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76)) begin
main_reducewindowinnerloop_exitwindow0_exitcond72_reg <= main_reducewindowinnerloop_exitwindow0_exitcond72;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindowinnerloop_exitwindow0_exitcond72) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindowinnerloop_exitwindow0_exitcond72_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.loop_exit.dim.3*/
/* %46 = add nuw nsw i64 %reduce-window.indvar.dim.292, 1*/
main_reducewindowloop_exitdim3_46 = (main_reducewindowloop_bodydim3lrph_reducewindowindvardim292_reg + 64'd1);
end
always @(*) begin
/* main: %reduce-window.loop_exit.dim.3*/
/* %exitcond75 = icmp eq i64 %46, 14*/
main_reducewindowloop_exitdim3_exitcond75 = (main_reducewindowloop_exitdim3_46 == 64'd14);
end
always @(*) begin
/* main: %reduce-window.loop_exit.dim.2*/
/* %47 = add nuw nsw i64 %reduce-window.indvar.dim.194, 1*/
main_reducewindowloop_exitdim2_47 = (main_reducewindowloop_bodydim2lrph_reducewindowindvardim194_reg + 64'd1);
end
always @(*) begin
/* main: %reduce-window.loop_exit.dim.2*/
/* %exitcond78 = icmp eq i64 %47, 14*/
main_reducewindowloop_exitdim2_exitcond78 = (main_reducewindowloop_exitdim2_47 == 64'd14);
end
always @(*) begin
/* main: %convolution.1.loop_body.dim.2.lr.ph*/
/* %convolution.1.indvar.dim.173 = phi i64 [ %73, %convolution.1.loop_exit.dim.2 ], [ 0, %convolution.1.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1loop_bodydim2lrphpreheader_80) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1loop_bodydim2lrph_convolution1indvardim173 = 64'd0;
end
/* main: %convolution.1.loop_body.dim.2.lr.ph*/
/* %convolution.1.indvar.dim.173 = phi i64 [ %73, %convolution.1.loop_exit.dim.2 ], [ 0, %convolution.1.loop_body.dim.2.lr.ph.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolution1loop_exitdim2_121) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1loop_exitdim2_exitcond65 == 1'd0))) */ begin
main_convolution1loop_bodydim2lrph_convolution1indvardim173 = main_convolution1loop_exitdim2_73;
end
end
always @(posedge clk) begin
/* main: %convolution.1.loop_body.dim.2.lr.ph*/
/* %convolution.1.indvar.dim.173 = phi i64 [ %73, %convolution.1.loop_exit.dim.2 ], [ 0, %convolution.1.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1loop_bodydim2lrphpreheader_80) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1loop_bodydim2lrph_convolution1indvardim173_reg <= main_convolution1loop_bodydim2lrph_convolution1indvardim173;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1loop_bodydim2lrph_convolution1indvardim173) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1loop_bodydim2lrph_convolution1indvardim173_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.loop_body.dim.2.lr.ph*/
/* %convolution.1.indvar.dim.173 = phi i64 [ %73, %convolution.1.loop_exit.dim.2 ], [ 0, %convolution.1.loop_body.dim.2.lr.ph.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1loop_exitdim2_121) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1loop_exitdim2_exitcond65 == 1'd0))) begin
main_convolution1loop_bodydim2lrph_convolution1indvardim173_reg <= main_convolution1loop_bodydim2lrph_convolution1indvardim173;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1loop_bodydim2lrph_convolution1indvardim173) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1loop_bodydim2lrph_convolution1indvardim173_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.loop_body.dim.2.lr.ph*/
/* %48 = add i64 %convolution.1.indvar.dim.173, -2*/
main_convolution1loop_bodydim2lrph_48 = (main_convolution1loop_bodydim2lrph_convolution1indvardim173_reg + -64'd2);
end
always @(posedge clk) begin
/* main: %convolution.1.loop_body.dim.2.lr.ph*/
/* %48 = add i64 %convolution.1.indvar.dim.173, -2*/
if ((cur_state == LEGUP_F_main_BB_convolution1loop_bodydim2lrph_81)) begin
main_convolution1loop_bodydim2lrph_48_reg <= main_convolution1loop_bodydim2lrph_48;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1loop_bodydim2lrph_48) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1loop_bodydim2lrph_48_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.loop_body.dim.3.lr.ph*/
/* %convolution.1.indvar.dim.270 = phi i64 [ 0, %convolution.1.loop_body.dim.2.lr.ph ], [ %72, %convolution.1.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1loop_bodydim2lrph_81) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1loop_bodydim3lrph_convolution1indvardim270 = 64'd0;
end
/* main: %convolution.1.loop_body.dim.3.lr.ph*/
/* %convolution.1.indvar.dim.270 = phi i64 [ 0, %convolution.1.loop_body.dim.2.lr.ph ], [ %72, %convolution.1.loop_exit.dim.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolution1loop_exitdim3_120) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1loop_exitdim3_exitcond62 == 1'd0))) */ begin
main_convolution1loop_bodydim3lrph_convolution1indvardim270 = main_convolution1loop_exitdim3_72;
end
end
always @(posedge clk) begin
/* main: %convolution.1.loop_body.dim.3.lr.ph*/
/* %convolution.1.indvar.dim.270 = phi i64 [ 0, %convolution.1.loop_body.dim.2.lr.ph ], [ %72, %convolution.1.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1loop_bodydim2lrph_81) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1loop_bodydim3lrph_convolution1indvardim270_reg <= main_convolution1loop_bodydim3lrph_convolution1indvardim270;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1loop_bodydim3lrph_convolution1indvardim270) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1loop_bodydim3lrph_convolution1indvardim270_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.loop_body.dim.3.lr.ph*/
/* %convolution.1.indvar.dim.270 = phi i64 [ 0, %convolution.1.loop_body.dim.2.lr.ph ], [ %72, %convolution.1.loop_exit.dim.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1loop_exitdim3_120) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1loop_exitdim3_exitcond62 == 1'd0))) begin
main_convolution1loop_bodydim3lrph_convolution1indvardim270_reg <= main_convolution1loop_bodydim3lrph_convolution1indvardim270;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1loop_bodydim3lrph_convolution1indvardim270) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1loop_bodydim3lrph_convolution1indvardim270_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.loop_body.dim.3.lr.ph*/
/* %49 = add i64 %convolution.1.indvar.dim.270, -2*/
main_convolution1loop_bodydim3lrph_49 = (main_convolution1loop_bodydim3lrph_convolution1indvardim270_reg + -64'd2);
end
always @(posedge clk) begin
/* main: %convolution.1.loop_body.dim.3.lr.ph*/
/* %49 = add i64 %convolution.1.indvar.dim.270, -2*/
if ((cur_state == LEGUP_F_main_BB_convolution1loop_bodydim3lrph_82)) begin
main_convolution1loop_bodydim3lrph_49_reg <= main_convolution1loop_bodydim3lrph_49;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1loop_bodydim3lrph_49) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1loop_bodydim3lrph_49_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.loop_body.dim.3.lr.ph*/
/* %50 = add i64 %convolution.1.indvar.dim.270, -2*/
main_convolution1loop_bodydim3lrph_50 = (main_convolution1loop_bodydim3lrph_convolution1indvardim270_reg + -64'd2);
end
always @(posedge clk) begin
/* main: %convolution.1.loop_body.dim.3.lr.ph*/
/* %50 = add i64 %convolution.1.indvar.dim.270, -2*/
if ((cur_state == LEGUP_F_main_BB_convolution1loop_bodydim3lrph_82)) begin
main_convolution1loop_bodydim3lrph_50_reg <= main_convolution1loop_bodydim3lrph_50;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1loop_bodydim3lrph_50) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1loop_bodydim3lrph_50_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.k0.lr.ph*/
/* %convolution.1.indvar.dim.367 = phi i64 [ 0, %convolution.1.loop_body.dim.3.lr.ph ], [ %71, %convolution.1.inner.loop_exit.k0 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1loop_bodydim3lrph_82) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyk0lrph_convolution1indvardim367 = 64'd0;
end
/* main: %convolution.1.inner.loop_body.k0.lr.ph*/
/* %convolution.1.indvar.dim.367 = phi i64 [ 0, %convolution.1.loop_body.dim.3.lr.ph ], [ %71, %convolution.1.inner.loop_exit.k0 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk0_119) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitk0_exitcond59_reg == 1'd0))) */ begin
main_convolution1innerloop_bodyk0lrph_convolution1indvardim367 = main_convolution1innerloop_exitk0_71_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.k0.lr.ph*/
/* %convolution.1.indvar.dim.367 = phi i64 [ 0, %convolution.1.loop_body.dim.3.lr.ph ], [ %71, %convolution.1.inner.loop_exit.k0 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1loop_bodydim3lrph_82) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyk0lrph_convolution1indvardim367_reg <= main_convolution1innerloop_bodyk0lrph_convolution1indvardim367;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk0lrph_convolution1indvardim367) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk0lrph_convolution1indvardim367_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.inner.loop_body.k0.lr.ph*/
/* %convolution.1.indvar.dim.367 = phi i64 [ 0, %convolution.1.loop_body.dim.3.lr.ph ], [ %71, %convolution.1.inner.loop_exit.k0 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk0_119) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitk0_exitcond59_reg == 1'd0))) begin
main_convolution1innerloop_bodyk0lrph_convolution1indvardim367_reg <= main_convolution1innerloop_bodyk0lrph_convolution1indvardim367;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk0lrph_convolution1indvardim367) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk0lrph_convolution1indvardim367_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.k0.lr.ph*/
/* %scevgep61 = getelementptr [1 x [14 x [14 x [16 x float]]]]* @temp3, i64 0, i64 0, i64 %convolution.1.indvar.dim.173, i64 %convolution.1.indvar.dim.270, i64 %convolution.1.indvar.dim.367*/
main_convolution1innerloop_bodyk0lrph_scevgep61 = (`TAG_g_temp3_a + (((64'd896 * main_convolution1loop_bodydim2lrph_convolution1indvardim173_reg) + (64'd64 * main_convolution1loop_bodydim3lrph_convolution1indvardim270_reg)) + (64'd4 * main_convolution1innerloop_bodyk0lrph_convolution1indvardim367_reg)));
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.k0.lr.ph*/
/* %scevgep61 = getelementptr [1 x [14 x [14 x [16 x float]]]]* @temp3, i64 0, i64 0, i64 %convolution.1.indvar.dim.173, i64 %convolution.1.indvar.dim.270, i64 %convolution.1.indvar.dim.367*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83)) begin
main_convolution1innerloop_bodyk0lrph_scevgep61_reg <= main_convolution1innerloop_bodyk0lrph_scevgep61;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk0lrph_scevgep61) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk0lrph_scevgep61_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %51 = phi float [ 0.000000e+00, %convolution.1.inner.loop_body.k0.lr.ph ], [ %67, %convolution.1.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyk1lrph_51 = 32'h0;
end
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %51 = phi float [ 0.000000e+00, %convolution.1.inner.loop_body.k0.lr.ph ], [ %67, %convolution.1.inner.loop_exit.k1 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk1_117) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitk1_exitcond56 == 1'd0))) */ begin
main_convolution1innerloop_bodyk1lrph_51 = main_convolution1innerloop_exitiz_67_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %51 = phi float [ 0.000000e+00, %convolution.1.inner.loop_body.k0.lr.ph ], [ %67, %convolution.1.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyk1lrph_51_reg <= main_convolution1innerloop_bodyk1lrph_51;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk1lrph_51) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk1lrph_51_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %51 = phi float [ 0.000000e+00, %convolution.1.inner.loop_body.k0.lr.ph ], [ %67, %convolution.1.inner.loop_exit.k1 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk1_117) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitk1_exitcond56 == 1'd0))) begin
main_convolution1innerloop_bodyk1lrph_51_reg <= main_convolution1innerloop_bodyk1lrph_51;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk1lrph_51) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk1lrph_51_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %52 = phi float [ 0.000000e+00, %convolution.1.inner.loop_body.k0.lr.ph ], [ %68, %convolution.1.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyk1lrph_52 = 32'h0;
end
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %52 = phi float [ 0.000000e+00, %convolution.1.inner.loop_body.k0.lr.ph ], [ %68, %convolution.1.inner.loop_exit.k1 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk1_117) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitk1_exitcond56 == 1'd0))) */ begin
main_convolution1innerloop_bodyk1lrph_52 = main_convolution1innerloop_exitiz_68_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %52 = phi float [ 0.000000e+00, %convolution.1.inner.loop_body.k0.lr.ph ], [ %68, %convolution.1.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyk1lrph_52_reg <= main_convolution1innerloop_bodyk1lrph_52;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk1lrph_52) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk1lrph_52_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %52 = phi float [ 0.000000e+00, %convolution.1.inner.loop_body.k0.lr.ph ], [ %68, %convolution.1.inner.loop_exit.k1 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk1_117) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitk1_exitcond56 == 1'd0))) begin
main_convolution1innerloop_bodyk1lrph_52_reg <= main_convolution1innerloop_bodyk1lrph_52;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk1lrph_52) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk1lrph_52_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %convolution.1.inner.indvar.k064 = phi i64 [ 0, %convolution.1.inner.loop_body.k0.lr.ph ], [ %70, %convolution.1.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064 = 64'd0;
end
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %convolution.1.inner.indvar.k064 = phi i64 [ 0, %convolution.1.inner.loop_body.k0.lr.ph ], [ %70, %convolution.1.inner.loop_exit.k1 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk1_117) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitk1_exitcond56 == 1'd0))) */ begin
main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064 = main_convolution1innerloop_exitk1_70;
end
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %convolution.1.inner.indvar.k064 = phi i64 [ 0, %convolution.1.inner.loop_body.k0.lr.ph ], [ %70, %convolution.1.inner.loop_exit.k1 ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk0lrph_83) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064_reg <= main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %convolution.1.inner.indvar.k064 = phi i64 [ 0, %convolution.1.inner.loop_body.k0.lr.ph ], [ %70, %convolution.1.inner.loop_exit.k1 ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk1_117) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitk1_exitcond56 == 1'd0))) begin
main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064_reg <= main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %53 = add i64 %48, %convolution.1.inner.indvar.k064*/
main_convolution1innerloop_bodyk1lrph_53 = (main_convolution1loop_bodydim2lrph_48_reg + main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064_reg);
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %53 = add i64 %48, %convolution.1.inner.indvar.k064*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84)) begin
main_convolution1innerloop_bodyk1lrph_53_reg <= main_convolution1innerloop_bodyk1lrph_53;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk1lrph_53) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk1lrph_53_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %54 = icmp ult i64 %53, 14*/
main_convolution1innerloop_bodyk1lrph_54 = (main_convolution1innerloop_bodyk1lrph_53 < 64'd14);
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.k1.lr.ph*/
/* %54 = icmp ult i64 %53, 14*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84)) begin
main_convolution1innerloop_bodyk1lrph_54_reg <= main_convolution1innerloop_bodyk1lrph_54;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyk1lrph_54) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyk1lrph_54_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %55 = phi float [ %51, %convolution.1.inner.loop_body.k1.lr.ph ], [ %67, %convolution.1.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyizlrph_55 = main_convolution1innerloop_bodyk1lrph_51_reg;
end
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %55 = phi float [ %51, %convolution.1.inner.loop_body.k1.lr.ph ], [ %67, %convolution.1.inner.loop_exit.iz ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitiz_116) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitiz_exitcond53 == 1'd0))) */ begin
main_convolution1innerloop_bodyizlrph_55 = main_convolution1innerloop_exitiz_67_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %55 = phi float [ %51, %convolution.1.inner.loop_body.k1.lr.ph ], [ %67, %convolution.1.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyizlrph_55_reg <= main_convolution1innerloop_bodyizlrph_55;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyizlrph_55) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyizlrph_55_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %55 = phi float [ %51, %convolution.1.inner.loop_body.k1.lr.ph ], [ %67, %convolution.1.inner.loop_exit.iz ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitiz_116) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitiz_exitcond53 == 1'd0))) begin
main_convolution1innerloop_bodyizlrph_55_reg <= main_convolution1innerloop_bodyizlrph_55;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyizlrph_55) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyizlrph_55_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %56 = phi float [ %52, %convolution.1.inner.loop_body.k1.lr.ph ], [ %68, %convolution.1.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyizlrph_56 = main_convolution1innerloop_bodyk1lrph_52_reg;
end
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %56 = phi float [ %52, %convolution.1.inner.loop_body.k1.lr.ph ], [ %68, %convolution.1.inner.loop_exit.iz ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitiz_116) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitiz_exitcond53 == 1'd0))) */ begin
main_convolution1innerloop_bodyizlrph_56 = main_convolution1innerloop_exitiz_68_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %56 = phi float [ %52, %convolution.1.inner.loop_body.k1.lr.ph ], [ %68, %convolution.1.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyizlrph_56_reg <= main_convolution1innerloop_bodyizlrph_56;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyizlrph_56) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyizlrph_56_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %56 = phi float [ %52, %convolution.1.inner.loop_body.k1.lr.ph ], [ %68, %convolution.1.inner.loop_exit.iz ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitiz_116) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitiz_exitcond53 == 1'd0))) begin
main_convolution1innerloop_bodyizlrph_56_reg <= main_convolution1innerloop_bodyizlrph_56;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyizlrph_56) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyizlrph_56_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %convolution.1.inner.indvar.k160 = phi i64 [ 0, %convolution.1.inner.loop_body.k1.lr.ph ], [ %69, %convolution.1.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyizlrph_convolution1innerindvark160 = 64'd0;
end
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %convolution.1.inner.indvar.k160 = phi i64 [ 0, %convolution.1.inner.loop_body.k1.lr.ph ], [ %69, %convolution.1.inner.loop_exit.iz ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitiz_116) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitiz_exitcond53 == 1'd0))) */ begin
main_convolution1innerloop_bodyizlrph_convolution1innerindvark160 = main_convolution1innerloop_exitiz_69;
end
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %convolution.1.inner.indvar.k160 = phi i64 [ 0, %convolution.1.inner.loop_body.k1.lr.ph ], [ %69, %convolution.1.inner.loop_exit.iz ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyk1lrph_84) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_bodyizlrph_convolution1innerindvark160_reg <= main_convolution1innerloop_bodyizlrph_convolution1innerindvark160;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyizlrph_convolution1innerindvark160) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyizlrph_convolution1innerindvark160_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %convolution.1.inner.indvar.k160 = phi i64 [ 0, %convolution.1.inner.loop_body.k1.lr.ph ], [ %69, %convolution.1.inner.loop_exit.iz ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitiz_116) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_exitiz_exitcond53 == 1'd0))) begin
main_convolution1innerloop_bodyizlrph_convolution1innerindvark160_reg <= main_convolution1innerloop_bodyizlrph_convolution1innerindvark160;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyizlrph_convolution1innerindvark160) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyizlrph_convolution1innerindvark160_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %57 = add i64 %49, %convolution.1.inner.indvar.k160*/
main_convolution1innerloop_bodyizlrph_57 = (main_convolution1loop_bodydim3lrph_49_reg + main_convolution1innerloop_bodyizlrph_convolution1innerindvark160_reg);
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %57 = add i64 %49, %convolution.1.inner.indvar.k160*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyizlrph_85)) begin
main_convolution1innerloop_bodyizlrph_57_reg <= main_convolution1innerloop_bodyizlrph_57;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_bodyizlrph_57) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_bodyizlrph_57_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %58 = add i64 %50, %convolution.1.inner.indvar.k160*/
main_convolution1innerloop_bodyizlrph_58 = (main_convolution1loop_bodydim3lrph_50_reg + main_convolution1innerloop_bodyizlrph_convolution1innerindvark160_reg);
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %59 = icmp ult i64 %58, 14*/
main_convolution1innerloop_bodyizlrph_59 = (main_convolution1innerloop_bodyizlrph_58 < 64'd14);
end
always @(*) begin
/* main: %convolution.1.inner.loop_body.iz.lr.ph*/
/* %60 = and i1 %54, %59*/
main_convolution1innerloop_bodyizlrph_60 = (main_convolution1innerloop_bodyk1lrph_54_reg & main_convolution1innerloop_bodyizlrph_59);
end
always @(*) begin
/* main: %in-bounds-after32.us*/
/* %61 = phi float [ %65, %in-bounds-after32.us ], [ %55, %in-bounds-after32.us.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_inboundsafter32uspreheader_86) & (memory_controller_waitrequest == 1'd0))) begin
main_inboundsafter32us_61 = main_convolution1innerloop_bodyizlrph_55_reg;
end
/* main: %in-bounds-after32.us*/
/* %61 = phi float [ %65, %in-bounds-after32.us ], [ %55, %in-bounds-after32.us.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_inboundsafter32us_114) & (memory_controller_waitrequest == 1'd0)) & (main_inboundsafter32us_exitcond50_reg == 1'd0))) */ begin
main_inboundsafter32us_61 = main_inboundsafter32us_65;
end
end
always @(posedge clk) begin
/* main: %in-bounds-after32.us*/
/* %61 = phi float [ %65, %in-bounds-after32.us ], [ %55, %in-bounds-after32.us.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_inboundsafter32uspreheader_86) & (memory_controller_waitrequest == 1'd0))) begin
main_inboundsafter32us_61_reg <= main_inboundsafter32us_61;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundsafter32us_61) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_inboundsafter32us_61_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %in-bounds-after32.us*/
/* %61 = phi float [ %65, %in-bounds-after32.us ], [ %55, %in-bounds-after32.us.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_inboundsafter32us_114) & (memory_controller_waitrequest == 1'd0)) & (main_inboundsafter32us_exitcond50_reg == 1'd0))) begin
main_inboundsafter32us_61_reg <= main_inboundsafter32us_61;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundsafter32us_61) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_inboundsafter32us_61_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %in-bounds-after32.us*/
/* %convolution.1.inner.indvar.iz58.us = phi i64 [ %66, %in-bounds-after32.us ], [ 0, %in-bounds-after32.us.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_inboundsafter32uspreheader_86) & (memory_controller_waitrequest == 1'd0))) begin
main_inboundsafter32us_convolution1innerindvariz58us = 64'd0;
end
/* main: %in-bounds-after32.us*/
/* %convolution.1.inner.indvar.iz58.us = phi i64 [ %66, %in-bounds-after32.us ], [ 0, %in-bounds-after32.us.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_inboundsafter32us_114) & (memory_controller_waitrequest == 1'd0)) & (main_inboundsafter32us_exitcond50_reg == 1'd0))) */ begin
main_inboundsafter32us_convolution1innerindvariz58us = main_inboundsafter32us_66_reg;
end
end
always @(posedge clk) begin
/* main: %in-bounds-after32.us*/
/* %convolution.1.inner.indvar.iz58.us = phi i64 [ %66, %in-bounds-after32.us ], [ 0, %in-bounds-after32.us.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_inboundsafter32uspreheader_86) & (memory_controller_waitrequest == 1'd0))) begin
main_inboundsafter32us_convolution1innerindvariz58us_reg <= main_inboundsafter32us_convolution1innerindvariz58us;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundsafter32us_convolution1innerindvariz58us) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_inboundsafter32us_convolution1innerindvariz58us_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %in-bounds-after32.us*/
/* %convolution.1.inner.indvar.iz58.us = phi i64 [ %66, %in-bounds-after32.us ], [ 0, %in-bounds-after32.us.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_inboundsafter32us_114) & (memory_controller_waitrequest == 1'd0)) & (main_inboundsafter32us_exitcond50_reg == 1'd0))) begin
main_inboundsafter32us_convolution1innerindvariz58us_reg <= main_inboundsafter32us_convolution1innerindvariz58us;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundsafter32us_convolution1innerindvariz58us) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_inboundsafter32us_convolution1innerindvariz58us_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %in-bounds-after32.us*/
/* %scevgep51 = getelementptr [1 x [14 x [14 x [8 x float]]]]* @temp2, i64 0, i64 0, i64 %53, i64 %57, i64 %convolution.1.inner.indvar.iz58.us*/
main_inboundsafter32us_scevgep51 = (`TAG_g_temp2_a + (((64'd448 * main_convolution1innerloop_bodyk1lrph_53_reg) + (64'd32 * main_convolution1innerloop_bodyizlrph_57_reg)) + (64'd4 * main_inboundsafter32us_convolution1innerindvariz58us_reg)));
end
always @(*) begin
/* main: %in-bounds-after32.us*/
/* %scevgep52 = getelementptr [5 x [5 x [8 x [16 x float]]]]* @param3, i64 0, i64 %convolution.1.inner.indvar.k064, i64 %convolution.1.inner.indvar.k160, i64 %convolution.1.inner.indvar.iz58.us, i64 %convolution.1.indvar.dim.367*/
main_inboundsafter32us_scevgep52 = (`TAG_g_param3_a + ((((64'd2560 * main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064_reg) + (64'd512 * main_convolution1innerloop_bodyizlrph_convolution1innerindvark160_reg)) + (64'd64 * main_inboundsafter32us_convolution1innerindvariz58us_reg)) + (64'd4 * main_convolution1innerloop_bodyk0lrph_convolution1indvardim367_reg)));
end
always @(*) begin
/* main: %in-bounds-after32.us*/
/* %62 = load volatile float* %scevgep52, align 4*/
main_inboundsafter32us_62 = memory_controller_out_a[31:0];
end
always @(*) begin
/* main: %in-bounds-after32.us*/
/* %63 = load float* %scevgep51, align 4*/
main_inboundsafter32us_63 = memory_controller_out_b[31:0];
end
always @(*) begin
main_inboundsafter32us_64 = main_altfp_multiply_32_0;
end
always @(*) begin
main_inboundsafter32us_65 = main_altfp_add_32_0;
end
always @(*) begin
/* main: %in-bounds-after32.us*/
/* %65 = fadd float %61, %64*/
main_inboundsafter32us_65_reg = main_fusion3loop_bodydim3_26_reg;
end
always @(*) begin
/* main: %in-bounds-after32.us*/
/* %66 = add nuw nsw i64 %convolution.1.inner.indvar.iz58.us, 1*/
main_inboundsafter32us_66 = (main_inboundsafter32us_convolution1innerindvariz58us_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %in-bounds-after32.us*/
/* %66 = add nuw nsw i64 %convolution.1.inner.indvar.iz58.us, 1*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
main_inboundsafter32us_66_reg <= main_inboundsafter32us_66;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundsafter32us_66) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_inboundsafter32us_66_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %in-bounds-after32.us*/
/* %exitcond50 = icmp eq i64 %66, 8*/
main_inboundsafter32us_exitcond50 = (main_inboundsafter32us_66 == 64'd8);
end
always @(posedge clk) begin
/* main: %in-bounds-after32.us*/
/* %exitcond50 = icmp eq i64 %66, 8*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
main_inboundsafter32us_exitcond50_reg <= main_inboundsafter32us_exitcond50;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_inboundsafter32us_exitcond50) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_inboundsafter32us_exitcond50_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_exit.iz*/
/* %67 = phi float [ %55, %convolution.1.inner.loop_body.iz.lr.ph ], [ %65, %convolution.1.inner.loop_exit.iz.loopexit ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyizlrph_85) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_bodyizlrph_60 == 1'd0))) begin
main_convolution1innerloop_exitiz_67 = main_convolution1innerloop_bodyizlrph_55_reg;
end
/* main: %convolution.1.inner.loop_exit.iz*/
/* %67 = phi float [ %55, %convolution.1.inner.loop_body.iz.lr.ph ], [ %65, %convolution.1.inner.loop_exit.iz.loopexit ]*/
else /* if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitizloopexit_115) & (memory_controller_waitrequest == 1'd0))) */ begin
main_convolution1innerloop_exitiz_67 = main_inboundsafter32us_65_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_exit.iz*/
/* %67 = phi float [ %55, %convolution.1.inner.loop_body.iz.lr.ph ], [ %65, %convolution.1.inner.loop_exit.iz.loopexit ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyizlrph_85) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_bodyizlrph_60 == 1'd0))) begin
main_convolution1innerloop_exitiz_67_reg <= main_convolution1innerloop_exitiz_67;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_exitiz_67) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_exitiz_67_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.inner.loop_exit.iz*/
/* %67 = phi float [ %55, %convolution.1.inner.loop_body.iz.lr.ph ], [ %65, %convolution.1.inner.loop_exit.iz.loopexit ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitizloopexit_115) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_exitiz_67_reg <= main_convolution1innerloop_exitiz_67;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_exitiz_67) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_exitiz_67_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_exit.iz*/
/* %68 = phi float [ %56, %convolution.1.inner.loop_body.iz.lr.ph ], [ %65, %convolution.1.inner.loop_exit.iz.loopexit ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyizlrph_85) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_bodyizlrph_60 == 1'd0))) begin
main_convolution1innerloop_exitiz_68 = main_convolution1innerloop_bodyizlrph_56_reg;
end
/* main: %convolution.1.inner.loop_exit.iz*/
/* %68 = phi float [ %56, %convolution.1.inner.loop_body.iz.lr.ph ], [ %65, %convolution.1.inner.loop_exit.iz.loopexit ]*/
else /* if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitizloopexit_115) & (memory_controller_waitrequest == 1'd0))) */ begin
main_convolution1innerloop_exitiz_68 = main_inboundsafter32us_65_reg;
end
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_exit.iz*/
/* %68 = phi float [ %56, %convolution.1.inner.loop_body.iz.lr.ph ], [ %65, %convolution.1.inner.loop_exit.iz.loopexit ]*/
if ((((cur_state == LEGUP_F_main_BB_convolution1innerloop_bodyizlrph_85) & (memory_controller_waitrequest == 1'd0)) & (main_convolution1innerloop_bodyizlrph_60 == 1'd0))) begin
main_convolution1innerloop_exitiz_68_reg <= main_convolution1innerloop_exitiz_68;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_exitiz_68) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_exitiz_68_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %convolution.1.inner.loop_exit.iz*/
/* %68 = phi float [ %56, %convolution.1.inner.loop_body.iz.lr.ph ], [ %65, %convolution.1.inner.loop_exit.iz.loopexit ]*/
if (((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitizloopexit_115) & (memory_controller_waitrequest == 1'd0))) begin
main_convolution1innerloop_exitiz_68_reg <= main_convolution1innerloop_exitiz_68;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_exitiz_68) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_exitiz_68_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_exit.iz*/
/* %69 = add nuw nsw i64 %convolution.1.inner.indvar.k160, 1*/
main_convolution1innerloop_exitiz_69 = (main_convolution1innerloop_bodyizlrph_convolution1innerindvark160_reg + 64'd1);
end
always @(*) begin
/* main: %convolution.1.inner.loop_exit.iz*/
/* %exitcond53 = icmp eq i64 %69, 5*/
main_convolution1innerloop_exitiz_exitcond53 = (main_convolution1innerloop_exitiz_69 == 64'd5);
end
always @(*) begin
/* main: %convolution.1.inner.loop_exit.k1*/
/* %70 = add nuw nsw i64 %convolution.1.inner.indvar.k064, 1*/
main_convolution1innerloop_exitk1_70 = (main_convolution1innerloop_bodyk1lrph_convolution1innerindvark064_reg + 64'd1);
end
always @(*) begin
/* main: %convolution.1.inner.loop_exit.k1*/
/* %exitcond56 = icmp eq i64 %70, 5*/
main_convolution1innerloop_exitk1_exitcond56 = (main_convolution1innerloop_exitk1_70 == 64'd5);
end
always @(*) begin
/* main: %convolution.1.inner.loop_exit.k0*/
/* %71 = add nuw nsw i64 %convolution.1.indvar.dim.367, 1*/
main_convolution1innerloop_exitk0_71 = (main_convolution1innerloop_bodyk0lrph_convolution1indvardim367_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_exit.k0*/
/* %71 = add nuw nsw i64 %convolution.1.indvar.dim.367, 1*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk0_118)) begin
main_convolution1innerloop_exitk0_71_reg <= main_convolution1innerloop_exitk0_71;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_exitk0_71) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_exitk0_71_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.inner.loop_exit.k0*/
/* %exitcond59 = icmp eq i64 %71, 16*/
main_convolution1innerloop_exitk0_exitcond59 = (main_convolution1innerloop_exitk0_71 == 64'd16);
end
always @(posedge clk) begin
/* main: %convolution.1.inner.loop_exit.k0*/
/* %exitcond59 = icmp eq i64 %71, 16*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk0_118)) begin
main_convolution1innerloop_exitk0_exitcond59_reg <= main_convolution1innerloop_exitk0_exitcond59;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_convolution1innerloop_exitk0_exitcond59) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_convolution1innerloop_exitk0_exitcond59_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %convolution.1.loop_exit.dim.3*/
/* %72 = add nuw nsw i64 %convolution.1.indvar.dim.270, 1*/
main_convolution1loop_exitdim3_72 = (main_convolution1loop_bodydim3lrph_convolution1indvardim270_reg + 64'd1);
end
always @(*) begin
/* main: %convolution.1.loop_exit.dim.3*/
/* %exitcond62 = icmp eq i64 %72, 14*/
main_convolution1loop_exitdim3_exitcond62 = (main_convolution1loop_exitdim3_72 == 64'd14);
end
always @(*) begin
/* main: %convolution.1.loop_exit.dim.2*/
/* %73 = add nuw nsw i64 %convolution.1.indvar.dim.173, 1*/
main_convolution1loop_exitdim2_73 = (main_convolution1loop_bodydim2lrph_convolution1indvardim173_reg + 64'd1);
end
always @(*) begin
/* main: %convolution.1.loop_exit.dim.2*/
/* %exitcond65 = icmp eq i64 %73, 14*/
main_convolution1loop_exitdim2_exitcond65 = (main_convolution1loop_exitdim2_73 == 64'd14);
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.2.lr.ph*/
/* %fusion.2.indvar.dim.154 = phi i64 [ %79, %fusion.2.loop_exit.dim.2 ], [ 0, %fusion.2.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim2lrphpreheader_122) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion2loop_bodydim2lrph_fusion2indvardim154 = 64'd0;
end
/* main: %fusion.2.loop_body.dim.2.lr.ph*/
/* %fusion.2.indvar.dim.154 = phi i64 [ %79, %fusion.2.loop_exit.dim.2 ], [ 0, %fusion.2.loop_body.dim.2.lr.ph.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_fusion2loop_exitdim2_144) & (memory_controller_waitrequest == 1'd0)) & (main_fusion2loop_exitdim2_exitcond32 == 1'd0))) */ begin
main_fusion2loop_bodydim2lrph_fusion2indvardim154 = main_fusion2loop_exitdim2_79;
end
end
always @(posedge clk) begin
/* main: %fusion.2.loop_body.dim.2.lr.ph*/
/* %fusion.2.indvar.dim.154 = phi i64 [ %79, %fusion.2.loop_exit.dim.2 ], [ 0, %fusion.2.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim2lrphpreheader_122) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion2loop_bodydim2lrph_fusion2indvardim154_reg <= main_fusion2loop_bodydim2lrph_fusion2indvardim154;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim2lrph_fusion2indvardim154) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion2loop_bodydim2lrph_fusion2indvardim154_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.2.loop_body.dim.2.lr.ph*/
/* %fusion.2.indvar.dim.154 = phi i64 [ %79, %fusion.2.loop_exit.dim.2 ], [ 0, %fusion.2.loop_body.dim.2.lr.ph.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_fusion2loop_exitdim2_144) & (memory_controller_waitrequest == 1'd0)) & (main_fusion2loop_exitdim2_exitcond32 == 1'd0))) begin
main_fusion2loop_bodydim2lrph_fusion2indvardim154_reg <= main_fusion2loop_bodydim2lrph_fusion2indvardim154;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim2lrph_fusion2indvardim154) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion2loop_bodydim2lrph_fusion2indvardim154_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.3.lr.ph*/
/* %fusion.2.indvar.dim.252 = phi i64 [ 0, %fusion.2.loop_body.dim.2.lr.ph ], [ %78, %fusion.2.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim2lrph_123) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion2loop_bodydim3lrph_fusion2indvardim252 = 64'd0;
end
/* main: %fusion.2.loop_body.dim.3.lr.ph*/
/* %fusion.2.indvar.dim.252 = phi i64 [ 0, %fusion.2.loop_body.dim.2.lr.ph ], [ %78, %fusion.2.loop_exit.dim.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_fusion2loop_exitdim3_143) & (memory_controller_waitrequest == 1'd0)) & (main_fusion2loop_exitdim3_exitcond29 == 1'd0))) */ begin
main_fusion2loop_bodydim3lrph_fusion2indvardim252 = main_fusion2loop_exitdim3_78;
end
end
always @(posedge clk) begin
/* main: %fusion.2.loop_body.dim.3.lr.ph*/
/* %fusion.2.indvar.dim.252 = phi i64 [ 0, %fusion.2.loop_body.dim.2.lr.ph ], [ %78, %fusion.2.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim2lrph_123) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion2loop_bodydim3lrph_fusion2indvardim252_reg <= main_fusion2loop_bodydim3lrph_fusion2indvardim252;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim3lrph_fusion2indvardim252) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion2loop_bodydim3lrph_fusion2indvardim252_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.2.loop_body.dim.3.lr.ph*/
/* %fusion.2.indvar.dim.252 = phi i64 [ 0, %fusion.2.loop_body.dim.2.lr.ph ], [ %78, %fusion.2.loop_exit.dim.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_fusion2loop_exitdim3_143) & (memory_controller_waitrequest == 1'd0)) & (main_fusion2loop_exitdim3_exitcond29 == 1'd0))) begin
main_fusion2loop_bodydim3lrph_fusion2indvardim252_reg <= main_fusion2loop_bodydim3lrph_fusion2indvardim252;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim3lrph_fusion2indvardim252) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion2loop_bodydim3lrph_fusion2indvardim252_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %fusion.2.indvar.dim.350 = phi i64 [ 0, %fusion.2.loop_body.dim.3.lr.ph ], [ %77, %fusion.2.loop_body.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3lrph_124) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion2loop_bodydim3_fusion2indvardim350 = 64'd0;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %fusion.2.indvar.dim.350 = phi i64 [ 0, %fusion.2.loop_body.dim.3.lr.ph ], [ %77, %fusion.2.loop_body.dim.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_142) & (memory_controller_waitrequest == 1'd0)) & (main_fusion2loop_bodydim3_exitcond25_reg == 1'd0))) */ begin
main_fusion2loop_bodydim3_fusion2indvardim350 = main_fusion2loop_bodydim3_77_reg;
end
end
always @(posedge clk) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %fusion.2.indvar.dim.350 = phi i64 [ 0, %fusion.2.loop_body.dim.3.lr.ph ], [ %77, %fusion.2.loop_body.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3lrph_124) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion2loop_bodydim3_fusion2indvardim350_reg <= main_fusion2loop_bodydim3_fusion2indvardim350;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim3_fusion2indvardim350) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion2loop_bodydim3_fusion2indvardim350_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.2.loop_body.dim.3*/
/* %fusion.2.indvar.dim.350 = phi i64 [ 0, %fusion.2.loop_body.dim.3.lr.ph ], [ %77, %fusion.2.loop_body.dim.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_142) & (memory_controller_waitrequest == 1'd0)) & (main_fusion2loop_bodydim3_exitcond25_reg == 1'd0))) begin
main_fusion2loop_bodydim3_fusion2indvardim350_reg <= main_fusion2loop_bodydim3_fusion2indvardim350;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim3_fusion2indvardim350) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion2loop_bodydim3_fusion2indvardim350_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %scevgep26 = getelementptr [1 x [14 x [14 x [16 x float]]]]* @temp4, i64 0, i64 0, i64 %fusion.2.indvar.dim.154, i64 %fusion.2.indvar.dim.252, i64 %fusion.2.indvar.dim.350*/
main_fusion2loop_bodydim3_scevgep26 = (`TAG_g_temp4_a + (((64'd896 * main_fusion2loop_bodydim2lrph_fusion2indvardim154_reg) + (64'd64 * main_fusion2loop_bodydim3lrph_fusion2indvardim252_reg)) + (64'd4 * main_fusion2loop_bodydim3_fusion2indvardim350_reg)));
end
always @(posedge clk) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %scevgep26 = getelementptr [1 x [14 x [14 x [16 x float]]]]* @temp4, i64 0, i64 0, i64 %fusion.2.indvar.dim.154, i64 %fusion.2.indvar.dim.252, i64 %fusion.2.indvar.dim.350*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
main_fusion2loop_bodydim3_scevgep26_reg <= main_fusion2loop_bodydim3_scevgep26;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim3_scevgep26) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion2loop_bodydim3_scevgep26_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %scevgep28 = getelementptr [1 x [14 x [14 x [16 x float]]]]* @temp3, i64 0, i64 0, i64 %fusion.2.indvar.dim.154, i64 %fusion.2.indvar.dim.252, i64 %fusion.2.indvar.dim.350*/
main_fusion2loop_bodydim3_scevgep28 = (`TAG_g_temp3_a + (((64'd896 * main_fusion2loop_bodydim2lrph_fusion2indvardim154_reg) + (64'd64 * main_fusion2loop_bodydim3lrph_fusion2indvardim252_reg)) + (64'd4 * main_fusion2loop_bodydim3_fusion2indvardim350_reg)));
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %scevgep27 = getelementptr [16 x float]* @param4, i64 0, i64 %fusion.2.indvar.dim.350*/
main_fusion2loop_bodydim3_scevgep27 = (`TAG_g_param4_a + (64'd4 * main_fusion2loop_bodydim3_fusion2indvardim350_reg));
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %74 = load float* %scevgep28, align 4*/
main_fusion2loop_bodydim3_74 = memory_controller_out_a[31:0];
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %75 = load volatile float* %scevgep27, align 4*/
main_fusion2loop_bodydim3_75 = memory_controller_out_b[31:0];
end
always @(*) begin
main_fusion2loop_bodydim3_76 = main_altfp_add_32_0;
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %77 = add nuw nsw i64 %fusion.2.indvar.dim.350, 1*/
main_fusion2loop_bodydim3_77 = (main_fusion2loop_bodydim3_fusion2indvardim350_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %77 = add nuw nsw i64 %fusion.2.indvar.dim.350, 1*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
main_fusion2loop_bodydim3_77_reg <= main_fusion2loop_bodydim3_77;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim3_77) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion2loop_bodydim3_77_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %exitcond25 = icmp eq i64 %77, 16*/
main_fusion2loop_bodydim3_exitcond25 = (main_fusion2loop_bodydim3_77 == 64'd16);
end
always @(posedge clk) begin
/* main: %fusion.2.loop_body.dim.3*/
/* %exitcond25 = icmp eq i64 %77, 16*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
main_fusion2loop_bodydim3_exitcond25_reg <= main_fusion2loop_bodydim3_exitcond25;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion2loop_bodydim3_exitcond25) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion2loop_bodydim3_exitcond25_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.2.loop_exit.dim.3*/
/* %78 = add nuw nsw i64 %fusion.2.indvar.dim.252, 1*/
main_fusion2loop_exitdim3_78 = (main_fusion2loop_bodydim3lrph_fusion2indvardim252_reg + 64'd1);
end
always @(*) begin
/* main: %fusion.2.loop_exit.dim.3*/
/* %exitcond29 = icmp eq i64 %78, 14*/
main_fusion2loop_exitdim3_exitcond29 = (main_fusion2loop_exitdim3_78 == 64'd14);
end
always @(*) begin
/* main: %fusion.2.loop_exit.dim.2*/
/* %79 = add nuw nsw i64 %fusion.2.indvar.dim.154, 1*/
main_fusion2loop_exitdim2_79 = (main_fusion2loop_bodydim2lrph_fusion2indvardim154_reg + 64'd1);
end
always @(*) begin
/* main: %fusion.2.loop_exit.dim.2*/
/* %exitcond32 = icmp eq i64 %79, 14*/
main_fusion2loop_exitdim2_exitcond32 = (main_fusion2loop_exitdim2_79 == 64'd14);
end
always @(*) begin
/* main: %reduce-window.1.loop_body.dim.2.lr.ph*/
/* %reduce-window.1.indvar.dim.145 = phi i64 [ %95, %reduce-window.1.loop_exit.dim.2 ], [ 0, %reduce-window.1.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1loop_bodydim2lrphpreheader_145) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145 = 64'd0;
end
/* main: %reduce-window.1.loop_body.dim.2.lr.ph*/
/* %reduce-window.1.indvar.dim.145 = phi i64 [ %95, %reduce-window.1.loop_exit.dim.2 ], [ 0, %reduce-window.1.loop_body.dim.2.lr.ph.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindow1loop_exitdim2_159) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1loop_exitdim2_exitcond22 == 1'd0))) */ begin
main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145 = main_reducewindow1loop_exitdim2_95;
end
end
always @(posedge clk) begin
/* main: %reduce-window.1.loop_body.dim.2.lr.ph*/
/* %reduce-window.1.indvar.dim.145 = phi i64 [ %95, %reduce-window.1.loop_exit.dim.2 ], [ 0, %reduce-window.1.loop_body.dim.2.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1loop_bodydim2lrphpreheader_145) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145_reg <= main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.1.loop_body.dim.2.lr.ph*/
/* %reduce-window.1.indvar.dim.145 = phi i64 [ %95, %reduce-window.1.loop_exit.dim.2 ], [ 0, %reduce-window.1.loop_body.dim.2.lr.ph.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindow1loop_exitdim2_159) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1loop_exitdim2_exitcond22 == 1'd0))) begin
main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145_reg <= main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.loop_body.dim.2.lr.ph*/
/* %80 = shl i64 %reduce-window.1.indvar.dim.145, 1*/
main_reducewindow1loop_bodydim2lrph_80 = (main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145_reg <<< (64'd1 % 64'd64));
end
always @(posedge clk) begin
/* main: %reduce-window.1.loop_body.dim.2.lr.ph*/
/* %80 = shl i64 %reduce-window.1.indvar.dim.145, 1*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1loop_bodydim2lrph_146)) begin
main_reducewindow1loop_bodydim2lrph_80_reg <= main_reducewindow1loop_bodydim2lrph_80;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1loop_bodydim2lrph_80) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1loop_bodydim2lrph_80_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.loop_body.dim.3.lr.ph*/
/* %reduce-window.1.indvar.dim.242 = phi i64 [ 0, %reduce-window.1.loop_body.dim.2.lr.ph ], [ %94, %reduce-window.1.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1loop_bodydim2lrph_146) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242 = 64'd0;
end
/* main: %reduce-window.1.loop_body.dim.3.lr.ph*/
/* %reduce-window.1.indvar.dim.242 = phi i64 [ 0, %reduce-window.1.loop_body.dim.2.lr.ph ], [ %94, %reduce-window.1.loop_exit.dim.3 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindow1loop_exitdim3_158) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1loop_exitdim3_exitcond19 == 1'd0))) */ begin
main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242 = main_reducewindow1loop_exitdim3_94;
end
end
always @(posedge clk) begin
/* main: %reduce-window.1.loop_body.dim.3.lr.ph*/
/* %reduce-window.1.indvar.dim.242 = phi i64 [ 0, %reduce-window.1.loop_body.dim.2.lr.ph ], [ %94, %reduce-window.1.loop_exit.dim.3 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1loop_bodydim2lrph_146) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242_reg <= main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.1.loop_body.dim.3.lr.ph*/
/* %reduce-window.1.indvar.dim.242 = phi i64 [ 0, %reduce-window.1.loop_body.dim.2.lr.ph ], [ %94, %reduce-window.1.loop_exit.dim.3 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindow1loop_exitdim3_158) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1loop_exitdim3_exitcond19 == 1'd0))) begin
main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242_reg <= main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.loop_body.dim.3.lr.ph*/
/* %81 = shl i64 %reduce-window.1.indvar.dim.242, 1*/
main_reducewindow1loop_bodydim3lrph_81 = (main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242_reg <<< (64'd1 % 64'd64));
end
always @(posedge clk) begin
/* main: %reduce-window.1.loop_body.dim.3.lr.ph*/
/* %81 = shl i64 %reduce-window.1.indvar.dim.242, 1*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1loop_bodydim3lrph_147)) begin
main_reducewindow1loop_bodydim3lrph_81_reg <= main_reducewindow1loop_bodydim3lrph_81;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1loop_bodydim3lrph_81) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1loop_bodydim3lrph_81_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_body.window.1.lr.ph*/
/* %reduce-window.1.indvar.dim.339 = phi i64 [ 0, %reduce-window.1.loop_body.dim.3.lr.ph ], [ %93, %reduce-window.1.inner.loop_exit.window.0 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1loop_bodydim3lrph_147) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339 = 64'd0;
end
/* main: %reduce-window.1.inner.loop_body.window.1.lr.ph*/
/* %reduce-window.1.indvar.dim.339 = phi i64 [ 0, %reduce-window.1.loop_body.dim.3.lr.ph ], [ %93, %reduce-window.1.inner.loop_exit.window.0 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_157) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow0_exitcond16_reg == 1'd0))) */ begin
main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339 = main_reducewindow1innerloop_exitwindow0_93_reg;
end
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_body.window.1.lr.ph*/
/* %reduce-window.1.indvar.dim.339 = phi i64 [ 0, %reduce-window.1.loop_body.dim.3.lr.ph ], [ %93, %reduce-window.1.inner.loop_exit.window.0 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1loop_bodydim3lrph_147) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339_reg <= main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.1.inner.loop_body.window.1.lr.ph*/
/* %reduce-window.1.indvar.dim.339 = phi i64 [ 0, %reduce-window.1.loop_body.dim.3.lr.ph ], [ %93, %reduce-window.1.inner.loop_exit.window.0 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_157) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow0_exitcond16_reg == 1'd0))) begin
main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339_reg <= main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_body.window.1.lr.ph*/
/* %scevgep18 = getelementptr [1 x [7 x [7 x [16 x float]]]]* @temp5, i64 0, i64 0, i64 %reduce-window.1.indvar.dim.145, i64 %reduce-window.1.indvar.dim.242, i64 %reduce-window.1.indvar.dim.339*/
main_reducewindow1innerloop_bodywindow1lrph_scevgep18 = (`TAG_g_temp5_a + (((64'd448 * main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145_reg) + (64'd64 * main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242_reg)) + (64'd4 * main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339_reg)));
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_body.window.1.lr.ph*/
/* %scevgep18 = getelementptr [1 x [7 x [7 x [16 x float]]]]* @temp5, i64 0, i64 0, i64 %reduce-window.1.indvar.dim.145, i64 %reduce-window.1.indvar.dim.242, i64 %reduce-window.1.indvar.dim.339*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow1lrph_148)) begin
main_reducewindow1innerloop_bodywindow1lrph_scevgep18_reg <= main_reducewindow1innerloop_bodywindow1lrph_scevgep18;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_bodywindow1lrph_scevgep18) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_bodywindow1lrph_scevgep18_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %82 = phi float [ 0xFFF0000000000000, %reduce-window.1.inner.loop_body.window.1.lr.ph ], [ %92, %reduce-window.1.inner.loop_exit.window.2 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow1lrph_148) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_bodywindow3lrphuspreheader_82 = 32'hFF800000;
end
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %82 = phi float [ 0xFFF0000000000000, %reduce-window.1.inner.loop_body.window.1.lr.ph ], [ %92, %reduce-window.1.inner.loop_exit.window.2 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow2_155) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow2_exitcond14 == 1'd0))) */ begin
main_reducewindow1innerloop_bodywindow3lrphuspreheader_82 = main_reducewindow1innerloop_exitwindow3us_92_reg;
end
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %82 = phi float [ 0xFFF0000000000000, %reduce-window.1.inner.loop_body.window.1.lr.ph ], [ %92, %reduce-window.1.inner.loop_exit.window.2 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow1lrph_148) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_bodywindow3lrphuspreheader_82_reg <= main_reducewindow1innerloop_bodywindow3lrphuspreheader_82;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_bodywindow3lrphuspreheader_82) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_bodywindow3lrphuspreheader_82_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %82 = phi float [ 0xFFF0000000000000, %reduce-window.1.inner.loop_body.window.1.lr.ph ], [ %92, %reduce-window.1.inner.loop_exit.window.2 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow2_155) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow2_exitcond14 == 1'd0))) begin
main_reducewindow1innerloop_bodywindow3lrphuspreheader_82_reg <= main_reducewindow1innerloop_bodywindow3lrphuspreheader_82;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_bodywindow3lrphuspreheader_82) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_bodywindow3lrphuspreheader_82_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %83 = phi i64 [ 0, %reduce-window.1.inner.loop_body.window.1.lr.ph ], [ %invar.inc43, %reduce-window.1.inner.loop_exit.window.2 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow1lrph_148) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_bodywindow3lrphuspreheader_83 = 64'd0;
end
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %83 = phi i64 [ 0, %reduce-window.1.inner.loop_body.window.1.lr.ph ], [ %invar.inc43, %reduce-window.1.inner.loop_exit.window.2 ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow2_155) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow2_exitcond14 == 1'd0))) */ begin
main_reducewindow1innerloop_bodywindow3lrphuspreheader_83 = main_reducewindow1innerloop_exitwindow2_invarinc43;
end
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %83 = phi i64 [ 0, %reduce-window.1.inner.loop_body.window.1.lr.ph ], [ %invar.inc43, %reduce-window.1.inner.loop_exit.window.2 ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow1lrph_148) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_bodywindow3lrphuspreheader_83_reg <= main_reducewindow1innerloop_bodywindow3lrphuspreheader_83;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_bodywindow3lrphuspreheader_83) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_bodywindow3lrphuspreheader_83_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %83 = phi i64 [ 0, %reduce-window.1.inner.loop_body.window.1.lr.ph ], [ %invar.inc43, %reduce-window.1.inner.loop_exit.window.2 ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow2_155) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow2_exitcond14 == 1'd0))) begin
main_reducewindow1innerloop_bodywindow3lrphuspreheader_83_reg <= main_reducewindow1innerloop_bodywindow3lrphuspreheader_83;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_bodywindow3lrphuspreheader_83) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_bodywindow3lrphuspreheader_83_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %84 = add i64 %80, %83*/
main_reducewindow1innerloop_bodywindow3lrphuspreheader_84 = (main_reducewindow1loop_bodydim2lrph_80_reg + main_reducewindow1innerloop_bodywindow3lrphuspreheader_83_reg);
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader*/
/* %84 = add i64 %80, %83*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow3lrphuspreheader_149)) begin
main_reducewindow1innerloop_bodywindow3lrphuspreheader_84_reg <= main_reducewindow1innerloop_bodywindow3lrphuspreheader_84;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_bodywindow3lrphuspreheader_84) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_bodywindow3lrphuspreheader_84_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %85 = phi float [ %92, %reduce-window.1.inner.loop_exit.window.3.us ], [ %82, %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow3lrphuspreheader_149) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_exitwindow3us_85 = main_reducewindow1innerloop_bodywindow3lrphuspreheader_82_reg;
end
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %85 = phi float [ %92, %reduce-window.1.inner.loop_exit.window.3.us ], [ %82, %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_154) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow3us_exitcond12_reg == 1'd0))) */ begin
main_reducewindow1innerloop_exitwindow3us_85 = main_reducewindow1innerloop_exitwindow3us_92;
end
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %85 = phi float [ %92, %reduce-window.1.inner.loop_exit.window.3.us ], [ %82, %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow3lrphuspreheader_149) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_exitwindow3us_85_reg <= main_reducewindow1innerloop_exitwindow3us_85;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_85) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_85_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %85 = phi float [ %92, %reduce-window.1.inner.loop_exit.window.3.us ], [ %82, %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_154) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow3us_exitcond12_reg == 1'd0))) begin
main_reducewindow1innerloop_exitwindow3us_85_reg <= main_reducewindow1innerloop_exitwindow3us_85;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_85) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_85_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %86 = phi i64 [ %invar.inc44.us, %reduce-window.1.inner.loop_exit.window.3.us ], [ 0, %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow3lrphuspreheader_149) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_exitwindow3us_86 = 64'd0;
end
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %86 = phi i64 [ %invar.inc44.us, %reduce-window.1.inner.loop_exit.window.3.us ], [ 0, %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_154) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow3us_exitcond12_reg == 1'd0))) */ begin
main_reducewindow1innerloop_exitwindow3us_86 = main_reducewindow1innerloop_exitwindow3us_invarinc44us_reg;
end
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %86 = phi i64 [ %invar.inc44.us, %reduce-window.1.inner.loop_exit.window.3.us ], [ 0, %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_bodywindow3lrphuspreheader_149) & (memory_controller_waitrequest == 1'd0))) begin
main_reducewindow1innerloop_exitwindow3us_86_reg <= main_reducewindow1innerloop_exitwindow3us_86;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_86) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_86_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %86 = phi i64 [ %invar.inc44.us, %reduce-window.1.inner.loop_exit.window.3.us ], [ 0, %reduce-window.1.inner.loop_body.window.3.lr.ph.us.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_154) & (memory_controller_waitrequest == 1'd0)) & (main_reducewindow1innerloop_exitwindow3us_exitcond12_reg == 1'd0))) begin
main_reducewindow1innerloop_exitwindow3us_86_reg <= main_reducewindow1innerloop_exitwindow3us_86;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_86) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_86_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %87 = add i64 %81, %86*/
main_reducewindow1innerloop_exitwindow3us_87 = (main_reducewindow1loop_bodydim3lrph_81_reg + main_reducewindow1innerloop_exitwindow3us_86_reg);
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %87 = add i64 %81, %86*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_150)) begin
main_reducewindow1innerloop_exitwindow3us_87_reg <= main_reducewindow1innerloop_exitwindow3us_87;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_87) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_87_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %scevgep13 = getelementptr [1 x [14 x [14 x [16 x float]]]]* @temp4, i64 0, i64 0, i64 %84, i64 %87, i64 %reduce-window.1.indvar.dim.339*/
main_reducewindow1innerloop_exitwindow3us_scevgep13 = (`TAG_g_temp4_a + (((64'd896 * main_reducewindow1innerloop_bodywindow3lrphuspreheader_84_reg) + (64'd64 * main_reducewindow1innerloop_exitwindow3us_87_reg)) + (64'd4 * main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339_reg)));
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %88 = load float* %scevgep13, align 4*/
main_reducewindow1innerloop_exitwindow3us_88 = memory_controller_out_a[31:0];
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %88 = load float* %scevgep13, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_153)) begin
main_reducewindow1innerloop_exitwindow3us_88_reg <= main_reducewindow1innerloop_exitwindow3us_88;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_88) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_88_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
main_reducewindow1innerloop_exitwindow3us_89 = altfp_compare32_1_main_reducewindow1innerloop_exitwindow3us_89_out;
end
always @(*) begin
main_reducewindow1innerloop_exitwindow3us_90 = altfp_compare32_1_main_reducewindow1innerloop_exitwindow3us_90_out;
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %90 = fcmp ueq float %85, 0.000000e+00*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_151)) begin
main_reducewindow1innerloop_exitwindow3us_90_reg <= main_reducewindow1innerloop_exitwindow3us_90;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_90) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_90_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %90 = fcmp ueq float %85, 0.000000e+00*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_151)) begin
main_reducewindow1innerloop_exitwindow3us_90_reg <= main_reducewindow1innerloop_exitwindow3us_90;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_90) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_90_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %91 = or i1 %89, %90*/
main_reducewindow1innerloop_exitwindow3us_91 = (main_reducewindow1innerloop_exitwindow3us_89 | main_reducewindow1innerloop_exitwindow3us_90_reg);
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %92 = select i1 %91, float %85, float %88*/
main_reducewindow1innerloop_exitwindow3us_92 = (main_reducewindow1innerloop_exitwindow3us_91 ? main_reducewindow1innerloop_exitwindow3us_85_reg : main_reducewindow1innerloop_exitwindow3us_88_reg);
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %92 = select i1 %91, float %85, float %88*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_154)) begin
main_reducewindow1innerloop_exitwindow3us_92_reg <= main_reducewindow1innerloop_exitwindow3us_92;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_92) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_92_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %invar.inc44.us = add nuw nsw i64 %86, 1*/
main_reducewindow1innerloop_exitwindow3us_invarinc44us = (main_reducewindow1innerloop_exitwindow3us_86_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %invar.inc44.us = add nuw nsw i64 %86, 1*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_150)) begin
main_reducewindow1innerloop_exitwindow3us_invarinc44us_reg <= main_reducewindow1innerloop_exitwindow3us_invarinc44us;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_invarinc44us) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_invarinc44us_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %exitcond12 = icmp eq i64 %invar.inc44.us, 2*/
main_reducewindow1innerloop_exitwindow3us_exitcond12 = (main_reducewindow1innerloop_exitwindow3us_invarinc44us == 64'd2);
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %exitcond12 = icmp eq i64 %invar.inc44.us, 2*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_150)) begin
main_reducewindow1innerloop_exitwindow3us_exitcond12_reg <= main_reducewindow1innerloop_exitwindow3us_exitcond12;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow3us_exitcond12) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow3us_exitcond12_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.2*/
/* %invar.inc43 = add nuw nsw i64 %83, 1*/
main_reducewindow1innerloop_exitwindow2_invarinc43 = (main_reducewindow1innerloop_bodywindow3lrphuspreheader_83_reg + 64'd1);
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.2*/
/* %exitcond14 = icmp eq i64 %invar.inc43, 2*/
main_reducewindow1innerloop_exitwindow2_exitcond14 = (main_reducewindow1innerloop_exitwindow2_invarinc43 == 64'd2);
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.0*/
/* %93 = add nuw nsw i64 %reduce-window.1.indvar.dim.339, 1*/
main_reducewindow1innerloop_exitwindow0_93 = (main_reducewindow1innerloop_bodywindow1lrph_reducewindow1indvardim339_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.0*/
/* %93 = add nuw nsw i64 %reduce-window.1.indvar.dim.339, 1*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156)) begin
main_reducewindow1innerloop_exitwindow0_93_reg <= main_reducewindow1innerloop_exitwindow0_93;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow0_93) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow0_93_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.inner.loop_exit.window.0*/
/* %exitcond16 = icmp eq i64 %93, 16*/
main_reducewindow1innerloop_exitwindow0_exitcond16 = (main_reducewindow1innerloop_exitwindow0_93 == 64'd16);
end
always @(posedge clk) begin
/* main: %reduce-window.1.inner.loop_exit.window.0*/
/* %exitcond16 = icmp eq i64 %93, 16*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156)) begin
main_reducewindow1innerloop_exitwindow0_exitcond16_reg <= main_reducewindow1innerloop_exitwindow0_exitcond16;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_reducewindow1innerloop_exitwindow0_exitcond16) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_reducewindow1innerloop_exitwindow0_exitcond16_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %reduce-window.1.loop_exit.dim.3*/
/* %94 = add nuw nsw i64 %reduce-window.1.indvar.dim.242, 1*/
main_reducewindow1loop_exitdim3_94 = (main_reducewindow1loop_bodydim3lrph_reducewindow1indvardim242_reg + 64'd1);
end
always @(*) begin
/* main: %reduce-window.1.loop_exit.dim.3*/
/* %exitcond19 = icmp eq i64 %94, 7*/
main_reducewindow1loop_exitdim3_exitcond19 = (main_reducewindow1loop_exitdim3_94 == 64'd7);
end
always @(*) begin
/* main: %reduce-window.1.loop_exit.dim.2*/
/* %95 = add nuw nsw i64 %reduce-window.1.indvar.dim.145, 1*/
main_reducewindow1loop_exitdim2_95 = (main_reducewindow1loop_bodydim2lrph_reducewindow1indvardim145_reg + 64'd1);
end
always @(*) begin
/* main: %reduce-window.1.loop_exit.dim.2*/
/* %exitcond22 = icmp eq i64 %95, 7*/
main_reducewindow1loop_exitdim2_exitcond22 = (main_reducewindow1loop_exitdim2_95 == 64'd7);
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %96 = phi i64 [ %105, %fusion.1.loop_body.dim.1 ], [ 0, %fusion.1.loop_body.dim.1.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1preheader_160) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion1loop_bodydim1_96 = 64'd0;
end
/* main: %fusion.1.loop_body.dim.1*/
/* %96 = phi i64 [ %105, %fusion.1.loop_body.dim.1 ], [ 0, %fusion.1.loop_body.dim.1.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_229) & (memory_controller_waitrequest == 1'd0)) & (main_fusion1loop_bodydim1_exitcond10_reg == 1'd0))) */ begin
main_fusion1loop_bodydim1_96 = main_fusion1loop_bodydim1_105_reg;
end
end
always @(posedge clk) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %96 = phi i64 [ %105, %fusion.1.loop_body.dim.1 ], [ 0, %fusion.1.loop_body.dim.1.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1preheader_160) & (memory_controller_waitrequest == 1'd0))) begin
main_fusion1loop_bodydim1_96_reg <= main_fusion1loop_bodydim1_96;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion1loop_bodydim1_96) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion1loop_bodydim1_96_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.1.loop_body.dim.1*/
/* %96 = phi i64 [ %105, %fusion.1.loop_body.dim.1 ], [ 0, %fusion.1.loop_body.dim.1.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_229) & (memory_controller_waitrequest == 1'd0)) & (main_fusion1loop_bodydim1_exitcond10_reg == 1'd0))) begin
main_fusion1loop_bodydim1_96_reg <= main_fusion1loop_bodydim1_96;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion1loop_bodydim1_96) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion1loop_bodydim1_96_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %scevgep11 = getelementptr [1 x [784 x float]]* @temp6, i64 0, i64 0, i64 %96*/
main_fusion1loop_bodydim1_scevgep11 = (`TAG_g_temp6_a + (64'd4 * main_fusion1loop_bodydim1_96_reg));
end
always @(posedge clk) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %scevgep11 = getelementptr [1 x [784 x float]]* @temp6, i64 0, i64 0, i64 %96*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_161)) begin
main_fusion1loop_bodydim1_scevgep11_reg <= main_fusion1loop_bodydim1_scevgep11;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion1loop_bodydim1_scevgep11) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion1loop_bodydim1_scevgep11_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %97 = and i64 %96, 15*/
main_fusion1loop_bodydim1_97 = (main_fusion1loop_bodydim1_96_reg & 64'd15);
end
always @(posedge clk) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %97 = and i64 %96, 15*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_161)) begin
main_fusion1loop_bodydim1_97_reg <= main_fusion1loop_bodydim1_97;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion1loop_bodydim1_97) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion1loop_bodydim1_97_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %98 = lshr i64 %96, 4*/
main_fusion1loop_bodydim1_98 = (main_fusion1loop_bodydim1_96_reg >>> (64'd4 % 64'd64));
end
always @(*) begin
main_fusion1loop_bodydim1_99 = main_unsigned_modulus_64_0;
end
always @(*) begin
main_fusion1loop_bodydim1_100 = main_unsigned_divide_64_0;
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %101 = getelementptr inbounds [1 x [7 x [7 x [16 x float]]]]* @temp5, i64 0, i64 0, i64 %100, i64 %99, i64 %97*/
main_fusion1loop_bodydim1_101 = (`TAG_g_temp5_a + (((64'd448 * main_fusion1loop_bodydim1_100) + (64'd64 * main_fusion1loop_bodydim1_99)) + (64'd4 * main_fusion1loop_bodydim1_97_reg)));
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %102 = load float* %101, align 4*/
main_fusion1loop_bodydim1_102 = memory_controller_out_b[31:0];
end
always @(posedge clk) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %102 = load float* %101, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_227)) begin
main_fusion1loop_bodydim1_102_reg <= main_fusion1loop_bodydim1_102;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion1loop_bodydim1_102) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion1loop_bodydim1_102_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
main_fusion1loop_bodydim1_103 = altfp_compare32_1_main_fusion1loop_bodydim1_103_out;
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %104 = select i1 %103, float 0.000000e+00, float %102*/
main_fusion1loop_bodydim1_104 = (main_fusion1loop_bodydim1_103 ? 32'h0 : main_fusion1loop_bodydim1_102_reg);
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %105 = add nuw nsw i64 %96, 1*/
main_fusion1loop_bodydim1_105 = (main_fusion1loop_bodydim1_96_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %105 = add nuw nsw i64 %96, 1*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_161)) begin
main_fusion1loop_bodydim1_105_reg <= main_fusion1loop_bodydim1_105;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion1loop_bodydim1_105) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion1loop_bodydim1_105_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %exitcond10 = icmp eq i64 %105, 784*/
main_fusion1loop_bodydim1_exitcond10 = (main_fusion1loop_bodydim1_105 == 64'd784);
end
always @(posedge clk) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %exitcond10 = icmp eq i64 %105, 784*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_161)) begin
main_fusion1loop_bodydim1_exitcond10_reg <= main_fusion1loop_bodydim1_exitcond10;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusion1loop_bodydim1_exitcond10) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusion1loop_bodydim1_exitcond10_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %dot.loop_body.reduction.lr.ph*/
/* %dot.indvar.rhs.19 = phi i64 [ %112, %dot.loop_exit.reduction ], [ 0, %dot.loop_body.reduction.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_dotloop_bodyreductionlrphpreheader_230) & (memory_controller_waitrequest == 1'd0))) begin
main_dotloop_bodyreductionlrph_dotindvarrhs19 = 64'd0;
end
/* main: %dot.loop_body.reduction.lr.ph*/
/* %dot.indvar.rhs.19 = phi i64 [ %112, %dot.loop_exit.reduction ], [ 0, %dot.loop_body.reduction.lr.ph.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_dotloop_exitreduction_261) & (memory_controller_waitrequest == 1'd0)) & (main_dotloop_exitreduction_exitcond7_reg == 1'd0))) */ begin
main_dotloop_bodyreductionlrph_dotindvarrhs19 = main_dotloop_exitreduction_112_reg;
end
end
always @(posedge clk) begin
/* main: %dot.loop_body.reduction.lr.ph*/
/* %dot.indvar.rhs.19 = phi i64 [ %112, %dot.loop_exit.reduction ], [ 0, %dot.loop_body.reduction.lr.ph.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_dotloop_bodyreductionlrphpreheader_230) & (memory_controller_waitrequest == 1'd0))) begin
main_dotloop_bodyreductionlrph_dotindvarrhs19_reg <= main_dotloop_bodyreductionlrph_dotindvarrhs19;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreductionlrph_dotindvarrhs19) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreductionlrph_dotindvarrhs19_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %dot.loop_body.reduction.lr.ph*/
/* %dot.indvar.rhs.19 = phi i64 [ %112, %dot.loop_exit.reduction ], [ 0, %dot.loop_body.reduction.lr.ph.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_dotloop_exitreduction_261) & (memory_controller_waitrequest == 1'd0)) & (main_dotloop_exitreduction_exitcond7_reg == 1'd0))) begin
main_dotloop_bodyreductionlrph_dotindvarrhs19_reg <= main_dotloop_bodyreductionlrph_dotindvarrhs19;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreductionlrph_dotindvarrhs19) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreductionlrph_dotindvarrhs19_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %dot.loop_body.reduction.lr.ph*/
/* %scevgep9 = getelementptr [1 x [10 x float]]* @temp7, i64 0, i64 0, i64 %dot.indvar.rhs.19*/
main_dotloop_bodyreductionlrph_scevgep9 = (`TAG_g_temp7_a + (64'd4 * main_dotloop_bodyreductionlrph_dotindvarrhs19_reg));
end
always @(posedge clk) begin
/* main: %dot.loop_body.reduction.lr.ph*/
/* %scevgep9 = getelementptr [1 x [10 x float]]* @temp7, i64 0, i64 0, i64 %dot.indvar.rhs.19*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreductionlrph_231)) begin
main_dotloop_bodyreductionlrph_scevgep9_reg <= main_dotloop_bodyreductionlrph_scevgep9;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreductionlrph_scevgep9) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreductionlrph_scevgep9_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %dot.loop_body.reduction*/
/* %106 = phi float [ 0.000000e+00, %dot.loop_body.reduction.lr.ph ], [ %110, %dot.loop_body.reduction ]*/
if (((cur_state == LEGUP_F_main_BB_dotloop_bodyreductionlrph_231) & (memory_controller_waitrequest == 1'd0))) begin
main_dotloop_bodyreduction_106 = 32'h0;
end
/* main: %dot.loop_body.reduction*/
/* %106 = phi float [ 0.000000e+00, %dot.loop_body.reduction.lr.ph ], [ %110, %dot.loop_body.reduction ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_259) & (memory_controller_waitrequest == 1'd0)) & (main_dotloop_bodyreduction_exitcond_reg == 1'd0))) */ begin
main_dotloop_bodyreduction_106 = main_dotloop_bodyreduction_110;
end
end
always @(posedge clk) begin
/* main: %dot.loop_body.reduction*/
/* %106 = phi float [ 0.000000e+00, %dot.loop_body.reduction.lr.ph ], [ %110, %dot.loop_body.reduction ]*/
if (((cur_state == LEGUP_F_main_BB_dotloop_bodyreductionlrph_231) & (memory_controller_waitrequest == 1'd0))) begin
main_dotloop_bodyreduction_106_reg <= main_dotloop_bodyreduction_106;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreduction_106) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreduction_106_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %dot.loop_body.reduction*/
/* %106 = phi float [ 0.000000e+00, %dot.loop_body.reduction.lr.ph ], [ %110, %dot.loop_body.reduction ]*/
if ((((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_259) & (memory_controller_waitrequest == 1'd0)) & (main_dotloop_bodyreduction_exitcond_reg == 1'd0))) begin
main_dotloop_bodyreduction_106_reg <= main_dotloop_bodyreduction_106;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreduction_106) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreduction_106_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %dot.loop_body.reduction*/
/* %dot.indvar.reduction7 = phi i64 [ 0, %dot.loop_body.reduction.lr.ph ], [ %111, %dot.loop_body.reduction ]*/
if (((cur_state == LEGUP_F_main_BB_dotloop_bodyreductionlrph_231) & (memory_controller_waitrequest == 1'd0))) begin
main_dotloop_bodyreduction_dotindvarreduction7 = 64'd0;
end
/* main: %dot.loop_body.reduction*/
/* %dot.indvar.reduction7 = phi i64 [ 0, %dot.loop_body.reduction.lr.ph ], [ %111, %dot.loop_body.reduction ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_259) & (memory_controller_waitrequest == 1'd0)) & (main_dotloop_bodyreduction_exitcond_reg == 1'd0))) */ begin
main_dotloop_bodyreduction_dotindvarreduction7 = main_dotloop_bodyreduction_111_reg;
end
end
always @(posedge clk) begin
/* main: %dot.loop_body.reduction*/
/* %dot.indvar.reduction7 = phi i64 [ 0, %dot.loop_body.reduction.lr.ph ], [ %111, %dot.loop_body.reduction ]*/
if (((cur_state == LEGUP_F_main_BB_dotloop_bodyreductionlrph_231) & (memory_controller_waitrequest == 1'd0))) begin
main_dotloop_bodyreduction_dotindvarreduction7_reg <= main_dotloop_bodyreduction_dotindvarreduction7;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreduction_dotindvarreduction7) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreduction_dotindvarreduction7_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %dot.loop_body.reduction*/
/* %dot.indvar.reduction7 = phi i64 [ 0, %dot.loop_body.reduction.lr.ph ], [ %111, %dot.loop_body.reduction ]*/
if ((((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_259) & (memory_controller_waitrequest == 1'd0)) & (main_dotloop_bodyreduction_exitcond_reg == 1'd0))) begin
main_dotloop_bodyreduction_dotindvarreduction7_reg <= main_dotloop_bodyreduction_dotindvarreduction7;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreduction_dotindvarreduction7) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreduction_dotindvarreduction7_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %dot.loop_body.reduction*/
/* %scevgep5 = getelementptr [784 x [10 x float]]* @param5, i64 0, i64 %dot.indvar.reduction7, i64 %dot.indvar.rhs.19*/
main_dotloop_bodyreduction_scevgep5 = (`TAG_g_param5_a + ((64'd40 * main_dotloop_bodyreduction_dotindvarreduction7_reg) + (64'd4 * main_dotloop_bodyreductionlrph_dotindvarrhs19_reg)));
end
always @(*) begin
/* main: %dot.loop_body.reduction*/
/* %scevgep6 = getelementptr [1 x [784 x float]]* @temp6, i64 0, i64 0, i64 %dot.indvar.reduction7*/
main_dotloop_bodyreduction_scevgep6 = (`TAG_g_temp6_a + (64'd4 * main_dotloop_bodyreduction_dotindvarreduction7_reg));
end
always @(*) begin
/* main: %dot.loop_body.reduction*/
/* %107 = load float* %scevgep6, align 4*/
main_dotloop_bodyreduction_107 = memory_controller_out_a[31:0];
end
always @(*) begin
/* main: %dot.loop_body.reduction*/
/* %108 = load volatile float* %scevgep5, align 4*/
main_dotloop_bodyreduction_108 = memory_controller_out_b[31:0];
end
always @(*) begin
main_dotloop_bodyreduction_109 = main_altfp_multiply_32_0;
end
always @(*) begin
main_dotloop_bodyreduction_110 = main_altfp_add_32_0;
end
always @(posedge clk) begin
/* main: %dot.loop_body.reduction*/
/* %110 = fadd float %106, %109*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_259)) begin
main_dotloop_bodyreduction_110_reg <= main_dotloop_bodyreduction_110;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreduction_110) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreduction_110_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %dot.loop_body.reduction*/
/* %110 = fadd float %106, %109*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_259)) begin
main_dotloop_bodyreduction_110_reg <= main_dotloop_bodyreduction_110;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreduction_110) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreduction_110_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %dot.loop_body.reduction*/
/* %111 = add nuw nsw i64 %dot.indvar.reduction7, 1*/
main_dotloop_bodyreduction_111 = (main_dotloop_bodyreduction_dotindvarreduction7_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %dot.loop_body.reduction*/
/* %111 = add nuw nsw i64 %dot.indvar.reduction7, 1*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
main_dotloop_bodyreduction_111_reg <= main_dotloop_bodyreduction_111;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreduction_111) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreduction_111_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %dot.loop_body.reduction*/
/* %exitcond = icmp eq i64 %111, 784*/
main_dotloop_bodyreduction_exitcond = (main_dotloop_bodyreduction_111 == 64'd784);
end
always @(posedge clk) begin
/* main: %dot.loop_body.reduction*/
/* %exitcond = icmp eq i64 %111, 784*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
main_dotloop_bodyreduction_exitcond_reg <= main_dotloop_bodyreduction_exitcond;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_bodyreduction_exitcond) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_bodyreduction_exitcond_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %dot.loop_exit.reduction*/
/* %112 = add nuw nsw i64 %dot.indvar.rhs.19, 1*/
main_dotloop_exitreduction_112 = (main_dotloop_bodyreductionlrph_dotindvarrhs19_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %dot.loop_exit.reduction*/
/* %112 = add nuw nsw i64 %dot.indvar.rhs.19, 1*/
if ((cur_state == LEGUP_F_main_BB_dotloop_exitreduction_260)) begin
main_dotloop_exitreduction_112_reg <= main_dotloop_exitreduction_112;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_exitreduction_112) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_exitreduction_112_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %dot.loop_exit.reduction*/
/* %exitcond7 = icmp eq i64 %112, 10*/
main_dotloop_exitreduction_exitcond7 = (main_dotloop_exitreduction_112 == 64'd10);
end
always @(posedge clk) begin
/* main: %dot.loop_exit.reduction*/
/* %exitcond7 = icmp eq i64 %112, 10*/
if ((cur_state == LEGUP_F_main_BB_dotloop_exitreduction_260)) begin
main_dotloop_exitreduction_exitcond7_reg <= main_dotloop_exitreduction_exitcond7;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_dotloop_exitreduction_exitcond7) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_dotloop_exitreduction_exitcond7_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.loop_body.dim.0*/
/* %fusion.indvar.dim.05 = phi i64 [ %116, %fusion.loop_body.dim.0 ], [ 0, %fusion.loop_body.dim.0.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0preheader_262) & (memory_controller_waitrequest == 1'd0))) begin
main_fusionloop_bodydim0_fusionindvardim05 = 64'd0;
end
/* main: %fusion.loop_body.dim.0*/
/* %fusion.indvar.dim.05 = phi i64 [ %116, %fusion.loop_body.dim.0 ], [ 0, %fusion.loop_body.dim.0.preheader ]*/
else /* if ((((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_280) & (memory_controller_waitrequest == 1'd0)) & (main_fusionloop_bodydim0_exitcond2_reg == 1'd0))) */ begin
main_fusionloop_bodydim0_fusionindvardim05 = main_fusionloop_bodydim0_116_reg;
end
end
always @(posedge clk) begin
/* main: %fusion.loop_body.dim.0*/
/* %fusion.indvar.dim.05 = phi i64 [ %116, %fusion.loop_body.dim.0 ], [ 0, %fusion.loop_body.dim.0.preheader ]*/
if (((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0preheader_262) & (memory_controller_waitrequest == 1'd0))) begin
main_fusionloop_bodydim0_fusionindvardim05_reg <= main_fusionloop_bodydim0_fusionindvardim05;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusionloop_bodydim0_fusionindvardim05) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusionloop_bodydim0_fusionindvardim05_reg"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.loop_body.dim.0*/
/* %fusion.indvar.dim.05 = phi i64 [ %116, %fusion.loop_body.dim.0 ], [ 0, %fusion.loop_body.dim.0.preheader ]*/
if ((((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_280) & (memory_controller_waitrequest == 1'd0)) & (main_fusionloop_bodydim0_exitcond2_reg == 1'd0))) begin
main_fusionloop_bodydim0_fusionindvardim05_reg <= main_fusionloop_bodydim0_fusionindvardim05;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusionloop_bodydim0_fusionindvardim05) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusionloop_bodydim0_fusionindvardim05_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.loop_body.dim.0*/
/* %scevgep = getelementptr [10 x float]* @temp8, i64 0, i64 %fusion.indvar.dim.05*/
main_fusionloop_bodydim0_scevgep = (`TAG_g_temp8_a + (64'd4 * main_fusionloop_bodydim0_fusionindvardim05_reg));
end
always @(posedge clk) begin
/* main: %fusion.loop_body.dim.0*/
/* %scevgep = getelementptr [10 x float]* @temp8, i64 0, i64 %fusion.indvar.dim.05*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
main_fusionloop_bodydim0_scevgep_reg <= main_fusionloop_bodydim0_scevgep;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusionloop_bodydim0_scevgep) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusionloop_bodydim0_scevgep_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.loop_body.dim.0*/
/* %scevgep3 = getelementptr [10 x float]* @param6, i64 0, i64 %fusion.indvar.dim.05*/
main_fusionloop_bodydim0_scevgep3 = (`TAG_g_param6_a + (64'd4 * main_fusionloop_bodydim0_fusionindvardim05_reg));
end
always @(*) begin
/* main: %fusion.loop_body.dim.0*/
/* %scevgep4 = getelementptr [1 x [10 x float]]* @temp7, i64 0, i64 0, i64 %fusion.indvar.dim.05*/
main_fusionloop_bodydim0_scevgep4 = (`TAG_g_temp7_a + (64'd4 * main_fusionloop_bodydim0_fusionindvardim05_reg));
end
always @(*) begin
/* main: %fusion.loop_body.dim.0*/
/* %113 = load float* %scevgep4, align 4*/
main_fusionloop_bodydim0_113 = memory_controller_out_a[31:0];
end
always @(*) begin
/* main: %fusion.loop_body.dim.0*/
/* %114 = load volatile float* %scevgep3, align 4*/
main_fusionloop_bodydim0_114 = memory_controller_out_b[31:0];
end
always @(*) begin
main_fusionloop_bodydim0_115 = main_altfp_add_32_0;
end
always @(*) begin
/* main: %fusion.loop_body.dim.0*/
/* %116 = add nuw nsw i64 %fusion.indvar.dim.05, 1*/
main_fusionloop_bodydim0_116 = (main_fusionloop_bodydim0_fusionindvardim05_reg + 64'd1);
end
always @(posedge clk) begin
/* main: %fusion.loop_body.dim.0*/
/* %116 = add nuw nsw i64 %fusion.indvar.dim.05, 1*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
main_fusionloop_bodydim0_116_reg <= main_fusionloop_bodydim0_116;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusionloop_bodydim0_116) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusionloop_bodydim0_116_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.loop_body.dim.0*/
/* %exitcond2 = icmp eq i64 %116, 10*/
main_fusionloop_bodydim0_exitcond2 = (main_fusionloop_bodydim0_116 == 64'd10);
end
always @(posedge clk) begin
/* main: %fusion.loop_body.dim.0*/
/* %exitcond2 = icmp eq i64 %116, 10*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
main_fusionloop_bodydim0_exitcond2_reg <= main_fusionloop_bodydim0_exitcond2;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusionloop_bodydim0_exitcond2) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to main_fusionloop_bodydim0_exitcond2_reg"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
/* main: %fusion.loop_exit.dim.0*/
/* %leflow_retval = load volatile float* getelementptr inbounds ([10 x float]* @temp8, i64 0, i64 0), align 8*/
main_fusionloop_exitdim0_leflow_retval = memory_controller_out_a[31:0];
end
always @(*) begin
/* main: %in-bounds-true*/
/* %23 = fadd float %7, %22*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_27)) begin
main_altfp_add_32_0_op0 = main_convolutioninnerloop_bodyiz_7_reg;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %26 = fadd float %24, %25*/
else if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_46)) begin
main_altfp_add_32_0_op0 = main_fusion3loop_bodydim3_24;
end
/* main: %in-bounds-after32.us*/
/* %65 = fadd float %61, %64*/
else if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_100)) begin
main_altfp_add_32_0_op0 = main_inboundsafter32us_61_reg;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %76 = fadd float %74, %75*/
else if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_127)) begin
main_altfp_add_32_0_op0 = main_fusion2loop_bodydim3_74;
end
/* main: %dot.loop_body.reduction*/
/* %110 = fadd float %106, %109*/
else if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_245)) begin
main_altfp_add_32_0_op0 = main_dotloop_bodyreduction_106_reg;
end
/* main: %fusion.loop_body.dim.0*/
/* %115 = fadd float %113, %114*/
else /* if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_265)) */ begin
main_altfp_add_32_0_op0 = main_fusionloop_bodydim0_113;
end
end
always @(*) begin
/* main: %in-bounds-true*/
/* %23 = fadd float %7, %22*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_27)) begin
main_altfp_add_32_0_op1 = main_inboundstrue_22;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %26 = fadd float %24, %25*/
else if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_46)) begin
main_altfp_add_32_0_op1 = main_fusion3loop_bodydim3_25;
end
/* main: %in-bounds-after32.us*/
/* %65 = fadd float %61, %64*/
else if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_100)) begin
main_altfp_add_32_0_op1 = main_inboundsafter32us_64;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %76 = fadd float %74, %75*/
else if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_127)) begin
main_altfp_add_32_0_op1 = main_fusion2loop_bodydim3_75;
end
/* main: %dot.loop_body.reduction*/
/* %110 = fadd float %106, %109*/
else if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_245)) begin
main_altfp_add_32_0_op1 = main_dotloop_bodyreduction_109;
end
/* main: %fusion.loop_body.dim.0*/
/* %115 = fadd float %113, %114*/
else /* if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_265)) */ begin
main_altfp_add_32_0_op1 = main_fusionloop_bodydim0_114;
end
end
always @(*) begin
altfp_main_fusion3loop_bodydim3_26_en = (memory_controller_waitrequest == 1'd0);
end
always @(*) begin
main_altfp_add_32_0 = altfp_adder_main_fusion3loop_bodydim3_26_out;
end
always @(*) begin
/* main: %in-bounds-true*/
/* %22 = fmul float %20, %21*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_16)) begin
main_altfp_multiply_32_0_op0 = main_inboundstrue_20_reg;
end
/* main: %in-bounds-after32.us*/
/* %64 = fmul float %62, %63*/
else if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_89)) begin
main_altfp_multiply_32_0_op0 = main_inboundsafter32us_62;
end
/* main: %dot.loop_body.reduction*/
/* %109 = fmul float %107, %108*/
else /* if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_234)) */ begin
main_altfp_multiply_32_0_op0 = main_dotloop_bodyreduction_107;
end
end
always @(*) begin
/* main: %in-bounds-true*/
/* %22 = fmul float %20, %21*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_16)) begin
main_altfp_multiply_32_0_op1 = main_inboundstrue_21;
end
/* main: %in-bounds-after32.us*/
/* %64 = fmul float %62, %63*/
else if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_89)) begin
main_altfp_multiply_32_0_op1 = main_inboundsafter32us_63;
end
/* main: %dot.loop_body.reduction*/
/* %109 = fmul float %107, %108*/
else /* if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_234)) */ begin
main_altfp_multiply_32_0_op1 = main_dotloop_bodyreduction_108;
end
end
always @(*) begin
altfp_main_inboundstrue_22_en = (memory_controller_waitrequest == 1'd0);
end
always @(*) begin
main_altfp_multiply_32_0 = altfp_multiplier_main_inboundstrue_22_out;
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %99 = urem i64 %98, 7*/
main_unsigned_modulus_64_0_op0 = main_fusion1loop_bodydim1_98;
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %99 = urem i64 %98, 7*/
if (reset) begin main_unsigned_modulus_64_0_op1 = 0; end
main_unsigned_modulus_64_0_op1 = 64'd7;
end
always @(*) begin
lpm_divide_main_fusion1loop_bodydim1_99_en = (memory_controller_waitrequest == 1'd0);
end
always @(*) begin
lpm_divide_main_fusion1loop_bodydim1_99_out = lpm_divide_main_fusion1loop_bodydim1_99_temp_out;
end
always @(*) begin
main_unsigned_modulus_64_0 = lpm_divide_main_fusion1loop_bodydim1_99_out;
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %100 = udiv i64 %96, 112*/
main_unsigned_divide_64_0_op0 = main_fusion1loop_bodydim1_96_reg;
end
always @(*) begin
/* main: %fusion.1.loop_body.dim.1*/
/* %100 = udiv i64 %96, 112*/
if (reset) begin main_unsigned_divide_64_0_op1 = 0; end
main_unsigned_divide_64_0_op1 = 64'd112;
end
always @(*) begin
lpm_divide_main_fusion1loop_bodydim1_100_en = (memory_controller_waitrequest == 1'd0);
end
always @(*) begin
lpm_divide_main_fusion1loop_bodydim1_100_out = lpm_divide_main_fusion1loop_bodydim1_100_temp_out;
end
always @(*) begin
main_unsigned_divide_64_0 = lpm_divide_main_fusion1loop_bodydim1_100_out;
end
always @(*) begin
altfp_main_fusion3loop_bodydim3_27_en = (memory_controller_waitrequest == 1'd0);
end
always @(*) begin
altfp_main_reducewindowinnerloop_exitwindow3_42_en = (memory_controller_waitrequest == 1'd0);
end
always @(*) begin
altfp_main_reducewindowinnerloop_exitwindow3_41_en = (memory_controller_waitrequest == 1'd0);
end
always @(*) begin
altfp_main_reducewindow1innerloop_exitwindow3us_90_en = (memory_controller_waitrequest == 1'd0);
end
always @(*) begin
altfp_main_reducewindow1innerloop_exitwindow3us_89_en = (memory_controller_waitrequest == 1'd0);
end
always @(*) begin
altfp_main_fusion1loop_bodydim1_103_en = (memory_controller_waitrequest == 1'd0);
end
always @(posedge clk) begin
if ((cur_state == LEGUP_0)) begin
finish <= 1'd0;
/* synthesis translate_off */
if (start == 1'b0 && ^(1'd0) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to finish"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.loop_exit.dim.0*/
/* ret float %leflow_retval*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_exitdim0_283)) begin
finish <= (memory_controller_waitrequest == 1'd0);
/* synthesis translate_off */
if (start == 1'b0 && ^((memory_controller_waitrequest == 1'd0)) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to finish"); $finish; end
/* synthesis translate_on */
end
end
always @(*) begin
memory_controller_enable_a = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_enable_a = 1'd0;
end
/* main: %convolution.inner.loop_exit.k0*/
/* store float %13, float* %scevgep99, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk0_8)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %in-bounds-true*/
/* %20 = load volatile float* %scevgep92, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_13)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %in-bounds-true*/
/* %21 = load volatile float* %scevgep93, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_14)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %24 = load float* %scevgep84, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %in-bounds-after32.us*/
/* %62 = load volatile float* %scevgep52, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %convolution.1.inner.loop_exit.k0*/
/* store float %68, float* %scevgep61, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk0_118)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %74 = load float* %scevgep28, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %88 = load float* %scevgep13, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_151)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %reduce-window.1.inner.loop_exit.window.0*/
/* store float %92, float* %scevgep18, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %dot.loop_body.reduction*/
/* %107 = load float* %scevgep6, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %dot.loop_exit.reduction*/
/* store float %110, float* %scevgep9, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_exitreduction_260)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %fusion.loop_body.dim.0*/
/* %113 = load float* %scevgep4, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
memory_controller_enable_a = 1'd1;
end
/* main: %fusion.loop_exit.dim.0*/
/* %leflow_retval = load volatile float* getelementptr inbounds ([10 x float]* @temp8, i64 0, i64 0), align 8*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_exitdim0_281)) begin
memory_controller_enable_a = 1'd1;
end
end
always @(*) begin
memory_controller_address_a = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_address_a = 1'd0;
end
/* main: %convolution.inner.loop_exit.k0*/
/* store float %13, float* %scevgep99, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk0_8)) begin
memory_controller_address_a = main_convolutioninnerloop_bodyk0lrph_scevgep99_reg;
end
/* main: %in-bounds-true*/
/* %20 = load volatile float* %scevgep92, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_13)) begin
memory_controller_address_a = main_inboundstrue_scevgep92;
end
/* main: %in-bounds-true*/
/* %21 = load volatile float* %scevgep93, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_14)) begin
memory_controller_address_a = main_inboundstrue_scevgep93;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %24 = load float* %scevgep84, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
memory_controller_address_a = main_fusion3loop_bodydim3_scevgep84;
end
/* main: %in-bounds-after32.us*/
/* %62 = load volatile float* %scevgep52, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
memory_controller_address_a = main_inboundsafter32us_scevgep52;
end
/* main: %convolution.1.inner.loop_exit.k0*/
/* store float %68, float* %scevgep61, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk0_118)) begin
memory_controller_address_a = main_convolution1innerloop_bodyk0lrph_scevgep61_reg;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %74 = load float* %scevgep28, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
memory_controller_address_a = main_fusion2loop_bodydim3_scevgep28;
end
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %88 = load float* %scevgep13, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_151)) begin
memory_controller_address_a = main_reducewindow1innerloop_exitwindow3us_scevgep13;
end
/* main: %reduce-window.1.inner.loop_exit.window.0*/
/* store float %92, float* %scevgep18, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156)) begin
memory_controller_address_a = main_reducewindow1innerloop_bodywindow1lrph_scevgep18_reg;
end
/* main: %dot.loop_body.reduction*/
/* %107 = load float* %scevgep6, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
memory_controller_address_a = main_dotloop_bodyreduction_scevgep6;
end
/* main: %dot.loop_exit.reduction*/
/* store float %110, float* %scevgep9, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_exitreduction_260)) begin
memory_controller_address_a = main_dotloop_bodyreductionlrph_scevgep9_reg;
end
/* main: %fusion.loop_body.dim.0*/
/* %113 = load float* %scevgep4, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
memory_controller_address_a = main_fusionloop_bodydim0_scevgep4;
end
/* main: %fusion.loop_exit.dim.0*/
/* %leflow_retval = load volatile float* getelementptr inbounds ([10 x float]* @temp8, i64 0, i64 0), align 8*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_exitdim0_281)) begin
memory_controller_address_a = `TAG_g_temp8_a;
end
end
always @(*) begin
memory_controller_write_enable_a = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_write_enable_a = 1'd0;
end
/* main: %convolution.inner.loop_exit.k0*/
/* store float %13, float* %scevgep99, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk0_8)) begin
memory_controller_write_enable_a = 1'd1;
end
/* main: %in-bounds-true*/
/* %20 = load volatile float* %scevgep92, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_13)) begin
memory_controller_write_enable_a = 1'd0;
end
/* main: %in-bounds-true*/
/* %21 = load volatile float* %scevgep93, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_14)) begin
memory_controller_write_enable_a = 1'd0;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %24 = load float* %scevgep84, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
memory_controller_write_enable_a = 1'd0;
end
/* main: %in-bounds-after32.us*/
/* %62 = load volatile float* %scevgep52, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
memory_controller_write_enable_a = 1'd0;
end
/* main: %convolution.1.inner.loop_exit.k0*/
/* store float %68, float* %scevgep61, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk0_118)) begin
memory_controller_write_enable_a = 1'd1;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %74 = load float* %scevgep28, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
memory_controller_write_enable_a = 1'd0;
end
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %88 = load float* %scevgep13, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_151)) begin
memory_controller_write_enable_a = 1'd0;
end
/* main: %reduce-window.1.inner.loop_exit.window.0*/
/* store float %92, float* %scevgep18, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156)) begin
memory_controller_write_enable_a = 1'd1;
end
/* main: %dot.loop_body.reduction*/
/* %107 = load float* %scevgep6, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
memory_controller_write_enable_a = 1'd0;
end
/* main: %dot.loop_exit.reduction*/
/* store float %110, float* %scevgep9, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_exitreduction_260)) begin
memory_controller_write_enable_a = 1'd1;
end
/* main: %fusion.loop_body.dim.0*/
/* %113 = load float* %scevgep4, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
memory_controller_write_enable_a = 1'd0;
end
/* main: %fusion.loop_exit.dim.0*/
/* %leflow_retval = load volatile float* getelementptr inbounds ([10 x float]* @temp8, i64 0, i64 0), align 8*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_exitdim0_281)) begin
memory_controller_write_enable_a = 1'd0;
end
end
always @(*) begin
memory_controller_in_a = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_in_a = 1'd0;
end
/* main: %convolution.inner.loop_exit.k0*/
/* store float %13, float* %scevgep99, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk0_8)) begin
memory_controller_in_a = main_convolutioninnerloop_exitiz_13_reg;
end
/* main: %convolution.1.inner.loop_exit.k0*/
/* store float %68, float* %scevgep61, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk0_118)) begin
memory_controller_in_a = main_convolution1innerloop_exitiz_68_reg;
end
/* main: %reduce-window.1.inner.loop_exit.window.0*/
/* store float %92, float* %scevgep18, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156)) begin
memory_controller_in_a = main_reducewindow1innerloop_exitwindow3us_92_reg;
end
/* main: %dot.loop_exit.reduction*/
/* store float %110, float* %scevgep9, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_exitreduction_260)) begin
memory_controller_in_a = main_dotloop_bodyreduction_110_reg;
end
end
always @(*) begin
memory_controller_size_a = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_size_a = 1'd0;
end
/* main: %convolution.inner.loop_exit.k0*/
/* store float %13, float* %scevgep99, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolutioninnerloop_exitk0_8)) begin
memory_controller_size_a = 2'd2;
end
/* main: %in-bounds-true*/
/* %20 = load volatile float* %scevgep92, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_13)) begin
memory_controller_size_a = 2'd2;
end
/* main: %in-bounds-true*/
/* %21 = load volatile float* %scevgep93, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundstrue_14)) begin
memory_controller_size_a = 2'd2;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %24 = load float* %scevgep84, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
memory_controller_size_a = 2'd2;
end
/* main: %in-bounds-after32.us*/
/* %62 = load volatile float* %scevgep52, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
memory_controller_size_a = 2'd2;
end
/* main: %convolution.1.inner.loop_exit.k0*/
/* store float %68, float* %scevgep61, align 4*/
if ((cur_state == LEGUP_F_main_BB_convolution1innerloop_exitk0_118)) begin
memory_controller_size_a = 2'd2;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %74 = load float* %scevgep28, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
memory_controller_size_a = 2'd2;
end
/* main: %reduce-window.1.inner.loop_exit.window.3.us*/
/* %88 = load float* %scevgep13, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow3us_151)) begin
memory_controller_size_a = 2'd2;
end
/* main: %reduce-window.1.inner.loop_exit.window.0*/
/* store float %92, float* %scevgep18, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindow1innerloop_exitwindow0_156)) begin
memory_controller_size_a = 2'd2;
end
/* main: %dot.loop_body.reduction*/
/* %107 = load float* %scevgep6, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
memory_controller_size_a = 2'd2;
end
/* main: %dot.loop_exit.reduction*/
/* store float %110, float* %scevgep9, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_exitreduction_260)) begin
memory_controller_size_a = 2'd2;
end
/* main: %fusion.loop_body.dim.0*/
/* %113 = load float* %scevgep4, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
memory_controller_size_a = 2'd2;
end
/* main: %fusion.loop_exit.dim.0*/
/* %leflow_retval = load volatile float* getelementptr inbounds ([10 x float]* @temp8, i64 0, i64 0), align 8*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_exitdim0_281)) begin
memory_controller_size_a = 2'd2;
end
end
always @(*) begin
memory_controller_enable_b = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_enable_b = 1'd0;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %25 = load volatile float* %scevgep83, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %fusion.3.loop_body.dim.3*/
/* store float %28, float* %scevgep82, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_61)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %40 = load float* %scevgep69, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_71)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %reduce-window.inner.loop_exit.window.0*/
/* store float %44, float* %scevgep74, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %in-bounds-after32.us*/
/* %63 = load float* %scevgep51, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %75 = load volatile float* %scevgep27, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %fusion.2.loop_body.dim.3*/
/* store float %76, float* %scevgep26, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_141)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %fusion.1.loop_body.dim.1*/
/* %102 = load float* %101, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_225)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %fusion.1.loop_body.dim.1*/
/* store float %104, float* %scevgep11, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_228)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %dot.loop_body.reduction*/
/* %108 = load volatile float* %scevgep5, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %fusion.loop_body.dim.0*/
/* %114 = load volatile float* %scevgep3, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
memory_controller_enable_b = 1'd1;
end
/* main: %fusion.loop_body.dim.0*/
/* store volatile float %115, float* %scevgep, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_279)) begin
memory_controller_enable_b = 1'd1;
end
end
always @(*) begin
memory_controller_address_b = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_address_b = 1'd0;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %25 = load volatile float* %scevgep83, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
memory_controller_address_b = main_fusion3loop_bodydim3_scevgep83;
end
/* main: %fusion.3.loop_body.dim.3*/
/* store float %28, float* %scevgep82, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_61)) begin
memory_controller_address_b = main_fusion3loop_bodydim3_scevgep82_reg;
end
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %40 = load float* %scevgep69, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_71)) begin
memory_controller_address_b = main_reducewindowinnerloop_exitwindow3_scevgep69;
end
/* main: %reduce-window.inner.loop_exit.window.0*/
/* store float %44, float* %scevgep74, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76)) begin
memory_controller_address_b = main_reducewindowinnerloop_bodywindow1lrph_scevgep74_reg;
end
/* main: %in-bounds-after32.us*/
/* %63 = load float* %scevgep51, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
memory_controller_address_b = main_inboundsafter32us_scevgep51;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %75 = load volatile float* %scevgep27, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
memory_controller_address_b = main_fusion2loop_bodydim3_scevgep27;
end
/* main: %fusion.2.loop_body.dim.3*/
/* store float %76, float* %scevgep26, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_141)) begin
memory_controller_address_b = main_fusion2loop_bodydim3_scevgep26_reg;
end
/* main: %fusion.1.loop_body.dim.1*/
/* %102 = load float* %101, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_225)) begin
memory_controller_address_b = main_fusion1loop_bodydim1_101;
end
/* main: %fusion.1.loop_body.dim.1*/
/* store float %104, float* %scevgep11, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_228)) begin
memory_controller_address_b = main_fusion1loop_bodydim1_scevgep11_reg;
end
/* main: %dot.loop_body.reduction*/
/* %108 = load volatile float* %scevgep5, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
memory_controller_address_b = main_dotloop_bodyreduction_scevgep5;
end
/* main: %fusion.loop_body.dim.0*/
/* %114 = load volatile float* %scevgep3, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
memory_controller_address_b = main_fusionloop_bodydim0_scevgep3;
end
/* main: %fusion.loop_body.dim.0*/
/* store volatile float %115, float* %scevgep, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_279)) begin
memory_controller_address_b = main_fusionloop_bodydim0_scevgep_reg;
end
end
always @(*) begin
memory_controller_write_enable_b = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_write_enable_b = 1'd0;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %25 = load volatile float* %scevgep83, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
memory_controller_write_enable_b = 1'd0;
end
/* main: %fusion.3.loop_body.dim.3*/
/* store float %28, float* %scevgep82, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_61)) begin
memory_controller_write_enable_b = 1'd1;
end
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %40 = load float* %scevgep69, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_71)) begin
memory_controller_write_enable_b = 1'd0;
end
/* main: %reduce-window.inner.loop_exit.window.0*/
/* store float %44, float* %scevgep74, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76)) begin
memory_controller_write_enable_b = 1'd1;
end
/* main: %in-bounds-after32.us*/
/* %63 = load float* %scevgep51, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
memory_controller_write_enable_b = 1'd0;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %75 = load volatile float* %scevgep27, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
memory_controller_write_enable_b = 1'd0;
end
/* main: %fusion.2.loop_body.dim.3*/
/* store float %76, float* %scevgep26, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_141)) begin
memory_controller_write_enable_b = 1'd1;
end
/* main: %fusion.1.loop_body.dim.1*/
/* %102 = load float* %101, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_225)) begin
memory_controller_write_enable_b = 1'd0;
end
/* main: %fusion.1.loop_body.dim.1*/
/* store float %104, float* %scevgep11, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_228)) begin
memory_controller_write_enable_b = 1'd1;
end
/* main: %dot.loop_body.reduction*/
/* %108 = load volatile float* %scevgep5, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
memory_controller_write_enable_b = 1'd0;
end
/* main: %fusion.loop_body.dim.0*/
/* %114 = load volatile float* %scevgep3, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
memory_controller_write_enable_b = 1'd0;
end
/* main: %fusion.loop_body.dim.0*/
/* store volatile float %115, float* %scevgep, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_279)) begin
memory_controller_write_enable_b = 1'd1;
end
end
always @(*) begin
memory_controller_in_b = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_in_b = 1'd0;
end
/* main: %fusion.3.loop_body.dim.3*/
/* store float %28, float* %scevgep82, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_61)) begin
memory_controller_in_b = main_fusion3loop_bodydim3_28;
end
/* main: %reduce-window.inner.loop_exit.window.0*/
/* store float %44, float* %scevgep74, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76)) begin
memory_controller_in_b = main_reducewindowinnerloop_exitwindow3_44_reg;
end
/* main: %fusion.2.loop_body.dim.3*/
/* store float %76, float* %scevgep26, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_141)) begin
memory_controller_in_b = main_fusion2loop_bodydim3_76;
end
/* main: %fusion.1.loop_body.dim.1*/
/* store float %104, float* %scevgep11, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_228)) begin
memory_controller_in_b = main_fusion1loop_bodydim1_104;
end
/* main: %fusion.loop_body.dim.0*/
/* store volatile float %115, float* %scevgep, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_279)) begin
memory_controller_in_b = main_fusionloop_bodydim0_115;
end
end
always @(*) begin
memory_controller_size_b = 1'd0;
if ((cur_state == LEGUP_0)) begin
memory_controller_size_b = 1'd0;
end
/* main: %fusion.3.loop_body.dim.3*/
/* %25 = load volatile float* %scevgep83, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_44)) begin
memory_controller_size_b = 2'd2;
end
/* main: %fusion.3.loop_body.dim.3*/
/* store float %28, float* %scevgep82, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion3loop_bodydim3_61)) begin
memory_controller_size_b = 2'd2;
end
/* main: %reduce-window.inner.loop_exit.window.3*/
/* %40 = load float* %scevgep69, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow3_71)) begin
memory_controller_size_b = 2'd2;
end
/* main: %reduce-window.inner.loop_exit.window.0*/
/* store float %44, float* %scevgep74, align 4*/
if ((cur_state == LEGUP_F_main_BB_reducewindowinnerloop_exitwindow0_76)) begin
memory_controller_size_b = 2'd2;
end
/* main: %in-bounds-after32.us*/
/* %63 = load float* %scevgep51, align 4*/
if ((cur_state == LEGUP_F_main_BB_inboundsafter32us_87)) begin
memory_controller_size_b = 2'd2;
end
/* main: %fusion.2.loop_body.dim.3*/
/* %75 = load volatile float* %scevgep27, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_125)) begin
memory_controller_size_b = 2'd2;
end
/* main: %fusion.2.loop_body.dim.3*/
/* store float %76, float* %scevgep26, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion2loop_bodydim3_141)) begin
memory_controller_size_b = 2'd2;
end
/* main: %fusion.1.loop_body.dim.1*/
/* %102 = load float* %101, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_225)) begin
memory_controller_size_b = 2'd2;
end
/* main: %fusion.1.loop_body.dim.1*/
/* store float %104, float* %scevgep11, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusion1loop_bodydim1_228)) begin
memory_controller_size_b = 2'd2;
end
/* main: %dot.loop_body.reduction*/
/* %108 = load volatile float* %scevgep5, align 4*/
if ((cur_state == LEGUP_F_main_BB_dotloop_bodyreduction_232)) begin
memory_controller_size_b = 2'd2;
end
/* main: %fusion.loop_body.dim.0*/
/* %114 = load volatile float* %scevgep3, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_263)) begin
memory_controller_size_b = 2'd2;
end
/* main: %fusion.loop_body.dim.0*/
/* store volatile float %115, float* %scevgep, align 4*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_bodydim0_279)) begin
memory_controller_size_b = 2'd2;
end
end
always @(posedge clk) begin
if ((cur_state == LEGUP_0)) begin
return_val <= 0;
/* synthesis translate_off */
if (start == 1'b0 && ^(0) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to return_val"); $finish; end
/* synthesis translate_on */
end
/* main: %fusion.loop_exit.dim.0*/
/* ret float %leflow_retval*/
if ((cur_state == LEGUP_F_main_BB_fusionloop_exitdim0_283)) begin
return_val <= main_fusionloop_exitdim0_leflow_retval;
/* synthesis translate_off */
if (start == 1'b0 && ^(main_fusionloop_exitdim0_leflow_retval) === 1'bX) begin $display ("ERROR: Right hand side is 'X'. Assigned to return_val"); $finish; end
/* synthesis translate_on */
end
end
endmodule
`timescale 1 ns / 1 ns
module ram_dual_port
(
clk,
clken,
address_a,
address_b,
q_a,
q_b,
wren_a,
wren_b,
data_a,
data_b,
byteena_a,
byteena_b
);
parameter width_a = 1'd0;
parameter width_b = 1'd0;
parameter widthad_a = 1'd0;
parameter widthad_b = 1'd0;
parameter numwords_a = 1'd0;
parameter numwords_b = 1'd0;
parameter latency = 1'd1;
parameter init_file = "UNUSED";
parameter width_be_a = 1'd0;
parameter width_be_b = 1'd0;
input clk;
input clken;
input [(widthad_a-1):0] address_a;
input [(widthad_b-1):0] address_b;
output [(width_a-1):0] q_a;
output [(width_b-1):0] q_b;
input wren_a;
input wren_b;
input [(width_a-1):0] data_a;
input [(width_b-1):0] data_b;
input [width_be_a-1:0] byteena_a;
input [width_be_b-1:0] byteena_b;
wire [(width_a-1):0] q_a_wire;
wire [(width_b-1):0] q_b_wire;
reg clk_wire;
altsyncram altsyncram_component (
.clock0 (clk_wire),
.clock1 (1'd1),
.clocken0 (clken),
.clocken1 (1'd1),
.clocken2 (1'd1),
.clocken3 (1'd1),
.aclr0 (1'd0),
.aclr1 (1'd0),
.addressstall_a (1'd0),
.addressstall_b (1'd0),
.eccstatus (),
.address_a (address_a),
.address_b (address_b),
.rden_a (clken),
.rden_b (clken),
.q_a (q_a_wire),
.q_b (q_b_wire),
.byteena_a (byteena_a),
.byteena_b (byteena_b),
.wren_a (wren_a),
.wren_b (wren_b),
.data_a (data_a),
.data_b (data_b)
);
defparam
altsyncram_component.width_byteena_a = width_be_a,
altsyncram_component.width_byteena_b = width_be_b,
altsyncram_component.operation_mode = "BIDIR_DUAL_PORT",
altsyncram_component.read_during_write_mode_mixed_ports = "OLD_DATA",
altsyncram_component.init_file = init_file,
altsyncram_component.lpm_hint = "ENABLE_RUNTIME_MOD=NO",
altsyncram_component.lpm_type = "altsyncram",
altsyncram_component.power_up_uninitialized = "FALSE",
altsyncram_component.intended_device_family = "Cyclone V",
altsyncram_component.clock_enable_input_a = "BYPASS",
altsyncram_component.clock_enable_input_b = "BYPASS",
altsyncram_component.clock_enable_output_a = "BYPASS",
altsyncram_component.clock_enable_output_b = "BYPASS",
altsyncram_component.outdata_aclr_a = "NONE",
altsyncram_component.outdata_aclr_b = "NONE",
altsyncram_component.outdata_reg_a = "UNREGISTERED",
altsyncram_component.outdata_reg_b = "UNREGISTERED",
altsyncram_component.numwords_a = numwords_a,
altsyncram_component.numwords_b = numwords_b,
altsyncram_component.widthad_a = widthad_a,
altsyncram_component.widthad_b = widthad_b,
altsyncram_component.width_a = width_a,
altsyncram_component.width_b = width_b,
altsyncram_component.address_reg_b = "CLOCK0",
altsyncram_component.byteena_reg_b = "CLOCK0",
altsyncram_component.indata_reg_b = "CLOCK0",
altsyncram_component.wrcontrol_wraddress_reg_b = "CLOCK0";
always @(*) begin
clk_wire = clk;
end
integer j;
reg [(width_a-1):0] q_a_reg[latency:1], q_b_reg[latency:1];
always @(*)
begin
q_a_reg[1] <= q_a_wire;
q_b_reg[1] <= q_b_wire;
end
always @(posedge clk)
if (clken)
begin
for (j = 1; j < latency; j=j+1)
begin
q_a_reg[j+1] <= q_a_reg[j];
q_b_reg[j+1] <= q_b_reg[j];
end
end
assign q_a = (clken) ? q_a_reg[latency] : 0;
assign q_b = (clken) ? q_b_reg[latency] : 0;
endmodule
`timescale 1 ns / 1 ns
module rom_dual_port
(
clk,
clken,
address_a,
address_b,
q_a,
q_b
);
parameter width_a = 1'd0;
parameter width_b = 1'd0;
parameter widthad_a = 1'd0;
parameter widthad_b = 1'd0;
parameter numwords_a = 1'd0;
parameter numwords_b = 1'd0;
parameter latency = 1'd1;
parameter init_file = "UNUSED";
input clk;
input clken;
input [(widthad_a-1):0] address_a;
input [(widthad_b-1):0] address_b;
output [(width_a-1):0] q_a;
output [(width_b-1):0] q_b;
wire [(width_a-1):0] q_a_wire;
wire [(width_b-1):0] q_b_wire;
reg clk_wire;
altsyncram altsyncram_component (
.clock0 (clk_wire),
.clock1 (1'd1),
.clocken0 (clken),
.clocken1 (1'd1),
.clocken2 (1'd1),
.clocken3 (1'd1),
.aclr0 (1'd0),
.aclr1 (1'd0),
.addressstall_a (1'd0),
.addressstall_b (1'd0),
.eccstatus (),
.address_a (address_a),
.address_b (address_b),
.rden_a (clken),
.rden_b (clken),
.q_a (q_a_wire),
.q_b (q_b_wire),
.byteena_a (),
.byteena_b (),
.wren_a (1'd0),
.wren_b (1'd0),
.data_a (),
.data_b ()
);
defparam
altsyncram_component.operation_mode = "BIDIR_DUAL_PORT",
altsyncram_component.read_during_write_mode_mixed_ports = "OLD_DATA",
altsyncram_component.init_file = init_file,
altsyncram_component.lpm_hint = "ENABLE_RUNTIME_MOD=NO",
altsyncram_component.lpm_type = "altsyncram",
altsyncram_component.power_up_uninitialized = "FALSE",
altsyncram_component.intended_device_family = "Cyclone V",
altsyncram_component.clock_enable_input_a = "BYPASS",
altsyncram_component.clock_enable_input_b = "BYPASS",
altsyncram_component.clock_enable_output_a = "BYPASS",
altsyncram_component.clock_enable_output_b = "BYPASS",
altsyncram_component.outdata_aclr_a = "NONE",
altsyncram_component.outdata_aclr_b = "NONE",
altsyncram_component.outdata_reg_a = "UNREGISTERED",
altsyncram_component.outdata_reg_b = "UNREGISTERED",
altsyncram_component.numwords_a = numwords_a,
altsyncram_component.numwords_b = numwords_b,
altsyncram_component.widthad_a = widthad_a,
altsyncram_component.widthad_b = widthad_b,
altsyncram_component.width_a = width_a,
altsyncram_component.width_b = width_b,
altsyncram_component.address_reg_b = "CLOCK0",
altsyncram_component.byteena_reg_b = "CLOCK0",
altsyncram_component.indata_reg_b = "CLOCK0",
altsyncram_component.wrcontrol_wraddress_reg_b = "CLOCK0";
always @(*) begin
clk_wire = clk;
end
integer j;
reg [(width_a-1):0] q_a_reg[latency:1], q_b_reg[latency:1];
always @(*)
begin
q_a_reg[1] <= q_a_wire;
q_b_reg[1] <= q_b_wire;
end
always @(posedge clk)
if (clken)
begin
for (j = 1; j < latency; j=j+1)
begin
q_a_reg[j+1] <= q_a_reg[j];
q_b_reg[j+1] <= q_b_reg[j];
end
end
assign q_a = (clken) ? q_a_reg[latency] : 0;
assign q_b = (clken) ? q_b_reg[latency] : 0;
endmodule
// Adding code from verilog file: /home/danielhn/legup-debug/examples/../boards/CycloneV/DE1-SoC/top.v
module DE1_LTM_Test (
//////////////////// Clock Input ////////////////////
CLOCK_50, // 50 MHz
CLOCK2_50,
CLOCK3_50,
//////////////////// Push Button ////////////////////
KEY, // Pushbutton[3:0]
//////////////////// LED ////////////////////
LEDR,
//////////////////// SWITCH ////////////////////
SW,
//////////////////// HEX ////////////////////
HEX0,
HEX1,
HEX2,
HEX3,
HEX4,
HEX5,
//////////// GPIO, GPIO connect to MTL - Multi-Touch Panel //////////
B,
DCLK,
G,
HSD,
TOUCH_I2CSCL,
TOUCH_I2CSDA,
TOUCH_INT_n,
R,
VSD,
//////////// VGA //////////
VGA_B,
VGA_BLANK_N,
VGA_CLK,
VGA_G,
VGA_HS,
VGA_R,
VGA_SYNC_N,
VGA_VS
);
//////////////////////// Clock Input ////////////////////////
input CLOCK_50; // 50 MHz
input CLOCK2_50;
input CLOCK3_50;
//////////////////////// Push Button ////////////////////////
input [3:0] KEY; // Pushbutton[3:0]
//////////////////// LED ////////////////////
output [9:0] LEDR;
//////////////////// SWITCH ////////////////////
input [9:0] SW;
//////////////////// HEX ////////////////////
output [6:0] HEX0, HEX1, HEX2, HEX3, HEX4, HEX5;
reg [6:0] hex0, hex1, hex2, hex3, hex4, hex5, hex6, hex7;
//////////// GPIO, GPIO connect to MTL - Multi-Touch Panel //////////
output [7:0] B;
output DCLK;
output [7:0] G;
output HSD;
output TOUCH_I2CSCL;
inout TOUCH_I2CSDA;
input TOUCH_INT_n;
output [7:0] R;
output VSD;
//////////// VGA //////////
output [7:0] VGA_B;
output VGA_BLANK_N;
output VGA_CLK;
output [7:0] VGA_G;
output VGA_HS;
output [7:0] VGA_R;
output VGA_SYNC_N;
output VGA_VS;
wire clk = CLOCK_50;
//GLOBAL glob_inst(.in(CLOCK_50), .out(clk) );
wire go = ~KEY[1];
wire [3:0] argmax_temp3;
wire reset = ~KEY[0];
wire start;
wire [31:0] return_val;
reg [31:0] return_val_reg;
wire finish;
wire [3:0] state;
//hex_digits h7( .x(hex7), .hex_LEDs(HEX7));
//hex_digits h6( .x(hex6), .hex_LEDs(HEX6));
hex_digits_leflow h5( .x(hex5), .hex_LEDs(HEX5));
hex_digits_leflow h4( .x(hex4), .hex_LEDs(HEX4));
hex_digits_leflow h3( .x(hex3), .hex_LEDs(HEX3));
hex_digits_leflow h2( .x(hex2), .hex_LEDs(HEX2));
hex_digits_leflow h1( .x(hex1), .hex_LEDs(HEX1));
hex_digits h0( .x(hex0), .hex_LEDs(HEX0));
always @ (*) begin
hex7 <= 4'b110;
hex6 <= 4'b110;
hex5 <= 4'b101;
hex4 <= 4'b100;
hex3 <= 4'b011;
hex2 <= 4'b010;
hex1 <= 4'b010;
hex0 <= argmax_temp3;//return_val_reg[3:0];
end
parameter s_WAIT = 3'b001, s_START = 3'b010, s_EXE = 3'b011,
s_DONE = 3'b100;
// state registers
reg [3:0] y_Q, Y_D;
//assign LEDR[3:0] = y_Q;
// next state
always @(*)
begin
case (y_Q)
//s_WAIT: if (go) Y_D = s_START; else Y_D = y_Q;
s_WAIT: Y_D = s_START;
s_START: Y_D = s_EXE;
s_EXE: if (!finish) Y_D = s_EXE; else Y_D = s_DONE;
s_DONE: Y_D = s_DONE;
default: Y_D = 3'bxxx;
endcase
end
// current state
always @(posedge clk)
begin
if (reset ) // synchronous clear
y_Q <= s_WAIT;
else if (done_writing)
y_Q <= s_WAIT;
else
y_Q <= Y_D;
end
always @(posedge clk)
if (y_Q == s_EXE && finish)
return_val_reg <= return_val;
else if (y_Q == s_DONE)
return_val_reg <= return_val_reg;
else
return_val_reg <= 0;
assign start = (y_Q == s_START);
top top_inst (
.clk (clk),
.reset (reset),
.finish (finish),
.return_val (return_val),
.start (start),
.argmax_temp3(argmax_temp3),
.screen_values_mem_addr(screen_values_mem_addr),
.screen_values_mem_in(screen_values_mem_in),
.screen_values_mem_wen(screen_values_mem_wen),
.y_Q(y_Q),
.iRST_n(DLY2),
);
// ****************************************************************************************
// ****************************************************************************************
// ********************************LCD SCREEN RELATED WIRES********************************
// ****************************************************************************************
// ****************************************************************************************
wire [9:0] screen_values_mem_addr;
wire [31:0] screen_values_mem_in;
wire screen_values_mem_wen;
wire done_writing;
picture_controller u_controller
(
//CLOCK
.CLOCK_50(CLOCK_50),
.CLOCK2_50(CLOCK2_50),
//KEY
.KEY(KEY),
// LEDs
.LEDR(LEDR),
// Switches
.SW(SW),
//VGA
.VGA_B(B),
.VGA_CLK(DCLK),
.VGA_G(G),
.VGA_HS(HSD),
.VGA_R(R),
.VGA_VS(VSD),
//TOUCH
.TOUCH_I2CSCL(TOUCH_I2CSCL),
.TOUCH_I2CSDA(TOUCH_I2CSDA),
.TOUCH_INT_n(TOUCH_INT_n),
.oScreen_values_mem_addr(screen_values_mem_addr),
.oScreen_values_mem_in(screen_values_mem_in),
.oScreen_values_mem_wen(screen_values_mem_wen),
.iy_Q(y_Q),
.oDone_writing(done_writing),
);
// VGA
assign VGA_BLANK_N = 1'b1;
assign VGA_SYNC_N = 1'b0;
assign {VGA_B, VGA_G, VGA_R} = {B, G , R};
assign VGA_CLK = DCLK;
assign VGA_HS = HSD;
assign VGA_VS = VSD;
// ****************************************************************************************
// ****************************************************************************************
// *****************************END OF LCD SCREEN RELATED WIRES****************************
// ****************************************************************************************
// ****************************************************************************************
endmodule
module circuit_start_control (
go,
control_key
);
input control_key;
output go;
assign go = control_key;
endmodule
module hex_digits(x, hex_LEDs);
input [3:0] x;
output [6:0] hex_LEDs;
assign hex_LEDs[0] = (~x[3] & ~x[2] & ~x[1] & x[0]) |
(~x[3] & x[2] & ~x[1] & ~x[0]) |
(x[3] & x[2] & ~x[1] & x[0]) |
(x[3] & ~x[2] & x[1] & x[0]);
assign hex_LEDs[1] = (~x[3] & x[2] & ~x[1] & x[0]) |
(x[3] & x[1] & x[0]) |
(x[3] & x[2] & ~x[0]) |
(x[2] & x[1] & ~x[0]);
assign hex_LEDs[2] = (x[3] & x[2] & ~x[0]) |
(x[3] & x[2] & x[1]) |
(~x[3] & ~x[2] & x[1] & ~x[0]);
assign hex_LEDs[3] = (~x[3] & ~x[2] & ~x[1] & x[0]) |
(~x[3] & x[2] & ~x[1] & ~x[0]) |
(x[2] & x[1] & x[0]) |
(x[3] & ~x[2] & x[1] & ~x[0]);
assign hex_LEDs[4] = (~x[3] & x[0]) |
(~x[3] & x[2] & ~x[1]) |
(~x[2] & ~x[1] & x[0]);
assign hex_LEDs[5] = (~x[3] & ~x[2] & x[0]) |
(~x[3] & ~x[2] & x[1]) |
(~x[3] & x[1] & x[0]) |
(x[3] & x[2] & ~x[1] & x[0]);
assign hex_LEDs[6] = (~x[3] & ~x[2] & ~x[1]) |
(x[3] & x[2] & ~x[1] & ~x[0]) |
(~x[3] & x[2] & x[1] & x[0]);
endmodule
module hex_digits_leflow(x, hex_LEDs);
input [3:0] x;
output [6:0] hex_LEDs;
assign hex_LEDs[0] = 1'b1;
assign hex_LEDs[1] = 1'b1;
assign hex_LEDs[2] = 1'b1;
assign hex_LEDs[3] = 1'b1;
assign hex_LEDs[4] = 1'b1;
assign hex_LEDs[5] = 1'b1;
assign hex_LEDs[6] = 1'b1;
endmodule
`timescale 1 ns / 1 ns
module main_tb
(
);
reg clk;
reg reset;
reg start;
reg waitrequest;
wire [31:0] return_val;
wire finish;
top top_inst (
.clk (clk),
.reset (reset),
.start (start),
.waitrequest (waitrequest),
.finish (finish),
.return_val (return_val)
);
initial
clk = 0;
always @(clk)
clk <= #10 ~clk;
initial begin
//$monitor("At t=%t clk=%b %b %b %b %d", $time, clk, reset, start, finish, return_val);
@(negedge clk);
reset <= 1;
@(negedge clk);
reset <= 0;
start <= 1;
@(negedge clk);
start <= 0;
end
always@(finish) begin
if (finish == 1) begin
$writememh("memory_dump.txt",top_inst.memory_controller_inst.temp8.ram);
$display("At t=%t clk=%b finish=%b return_val=%d", $time, clk, finish, return_val);
$display("Cycles: %d", ($time-50)/20);
$finish;
end
end
initial begin
waitrequest <= 1;
@(negedge clk);
@(negedge clk);
waitrequest <= 0;
end
endmodule
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment