================================================================ == Vivado HLS Report for 'convolve' ================================================================ * Date: Wed May 30 11:44:02 2018 * Version: 2017.4 (Build 2086221 on Fri Dec 15 21:13:33 MST 2017) * Project: edge_detection * Solution: axi_port_only * Product family: zynq * Target device: xc7z020clg484-1 ================================================================ == Performance Estimates ================================================================ + Timing (ns): * Summary: +--------+-------+----------+------------+ | Clock | Target| Estimated| Uncertainty| +--------+-------+----------+------------+ |ap_clk | 10.00| 7.26| 1.25| +--------+-------+----------+------------+ + Latency (clock cycles): * Summary: +-----+-----+-----+-----+---------+ | Latency | Interval | Pipeline| | min | max | min | max | Type | +-----+-----+-----+-----+---------+ | 451| 451| 451| 451| none | +-----+-----+-----+-----+---------+ + Detail: * Instance: N/A * Loop: +-----------------------+-----+-----+----------+-----------+-----------+------+----------+ | | Latency | Iteration| Initiation Interval | Trip | | | Loop Name | min | max | Latency | achieved | target | Count| Pipelined| +-----------------------+-----+-----+----------+-----------+-----------+------+----------+ |- conv_rows_conv_cols | 449| 449| 51| 1| 1| 400| yes | +-----------------------+-----+-----+----------+-----------+-----------+------+----------+ ============================================================ + Verbose Summary: Synthesis Manager ============================================================ InlineROM: 1 ExposeGlobal: 0 ============================================================ + Verbose Summary: CDFG Model ============================================================ IsTopModel: 0 ResetActiveHigh: 1 IsCombinational: 2 IsDatapathOnly: 0 HasWiredReturn: 1 HasMFsm: 0 HasVarLatency: 1 IsPipeline: 0 IsRtlPipelined: 0 IsInstanceOverlapped: 0 IsDontTouch: 0 HasImplIP: 0 IsGatedGlobalClock: 0 + Individual pipeline summary: * Pipeline-0: initiation interval (II) = 1, depth = 51 ============================================================ + Verbose Summary: Schedule ============================================================ * Number of FSM states : 53 * Pipeline : 1 Pipeline-0 : II = 1, D = 51, States = { 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 } * Dataflow Pipeline: 0 * FSM state transitions: 1 --> 2 / true 2 --> 3 / true 3 --> 53 / (exitcond_flatten) 4 / (!exitcond_flatten) 4 --> 5 / true 5 --> 6 / true 6 --> 7 / true 7 --> 8 / true 8 --> 9 / true 9 --> 10 / true 10 --> 11 / true 11 --> 12 / true 12 --> 13 / true 13 --> 14 / true 14 --> 15 / true 15 --> 16 / true 16 --> 17 / true 17 --> 18 / true 18 --> 19 / true 19 --> 20 / true 20 --> 21 / true 21 --> 22 / true 22 --> 23 / true 23 --> 24 / true 24 --> 25 / true 25 --> 26 / true 26 --> 27 / true 27 --> 28 / true 28 --> 29 / true 29 --> 30 / true 30 --> 31 / true 31 --> 32 / true 32 --> 33 / true 33 --> 34 / true 34 --> 35 / true 35 --> 36 / true 36 --> 37 / true 37 --> 38 / true 38 --> 39 / true 39 --> 40 / true 40 --> 41 / true 41 --> 42 / true 42 --> 43 / true 43 --> 44 / true 44 --> 45 / true 45 --> 46 / true 46 --> 47 / true 47 --> 48 / true 48 --> 49 / true 49 --> 50 / true 50 --> 51 / true 51 --> 52 / true 52 --> 2 / true 53 --> * FSM state operations: : 2.32ns ST_1 : Operation 54 [1/1] (0.00ns) ---> "%crop_0_0 = alloca float" ST_1 : Operation 55 [1/1] (0.00ns) ---> "%crop_0_1 = alloca float" ST_1 : Operation 56 [1/1] (0.00ns) ---> "%crop_1_0 = alloca float" ST_1 : Operation 57 [1/1] (0.00ns) ---> "%crop_1_1 = alloca float" ST_1 : Operation 58 [1/1] (0.00ns) ---> "%crop_2_0 = alloca float" ST_1 : Operation 59 [1/1] (0.00ns) ---> "%crop_2_1 = alloca float" ST_1 : Operation 60 [1/1] (0.00ns) ---> "call void (...)* @_ssdm_op_SpecInterface(float* %out_stream_V, [8 x i8]* @ap_fifo_str, i32 0, i32 0, [1 x i8]* @p_str44, i32 0, i32 0, [1 x i8]* @p_str45, [1 x i8]* @p_str46, [1 x i8]* @p_str47, i32 2, i32 2, i32 16, i32 16, [1 x i8]* @p_str48, [1 x i8]* @p_str49)" ST_1 : Operation 61 [1/1] (0.00ns) ---> "call void (...)* @_ssdm_op_SpecInterface(float* %in_stream_V, [8 x i8]* @ap_fifo_str, i32 0, i32 0, [1 x i8]* @p_str37, i32 0, i32 0, [1 x i8]* @p_str38, [1 x i8]* @p_str39, [1 x i8]* @p_str40, i32 2, i32 2, i32 16, i32 16, [1 x i8]* @p_str41, [1 x i8]* @p_str42)" ST_1 : Operation 62 [1/1] (2.32ns) ---> "%temp_array_0_assign = alloca [20 x float], align 4" ---> Core 37 'RAM' ST_1 : Operation 63 [1/1] (2.32ns) ---> "%temp_array_1_assign = alloca [20 x float], align 4" ---> Core 37 'RAM' ST_1 : Operation 64 [1/1] (1.76ns) ---> "br label %1" [edge_detection/edge_detection.cpp:55] : 5.41ns ST_2 : Operation 65 [1/1] (0.00ns) ---> "%indvar_flatten = phi i9 [ 0, %0 ], [ %indvar_flatten_next, %._crit_edge ]" ST_2 : Operation 66 [1/1] (0.00ns) ---> "%i = phi i5 [ 0, %0 ], [ %i_mid2, %._crit_edge ]" [edge_detection/edge_detection.cpp:56] ST_2 : Operation 67 [1/1] (0.00ns) ---> "%pos_y_assign = phi i5 [ 0, %0 ], [ %j, %._crit_edge ]" ST_2 : Operation 68 [1/1] (1.66ns) ---> "%exitcond_flatten = icmp eq i9 %indvar_flatten, -112" ---> Core 25 'Cmp' ST_2 : Operation 69 [1/1] (1.93ns) ---> "%indvar_flatten_next = add i9 %indvar_flatten, 1" ---> Core 14 'AddSub' ST_2 : Operation 70 [1/1] (1.36ns) ---> "%exitcond = icmp eq i5 %pos_y_assign, -12" [edge_detection/edge_detection.cpp:56] ---> Core 25 'Cmp' ST_2 : Operation 71 [1/1] (1.37ns) ---> "%pos_y_assign_mid2 = select i1 %exitcond, i5 0, i5 %pos_y_assign" [edge_detection/edge_detection.cpp:56] ---> Core 26 'Sel' ST_2 : Operation 72 [1/1] (1.78ns) ---> "%i_s = add i5 %i, 1" [edge_detection/edge_detection.cpp:55] ---> Core 14 'AddSub' ST_2 : Operation 73 [1/1] (0.00ns) ---> "%tmp = call i4 @_ssdm_op_PartSelect.i4.i5.i32.i32(i5 %i_s, i32 1, i32 4)" [edge_detection/edge_detection.cpp:62] ST_2 : Operation 74 [1/1] (1.30ns) ---> "%icmp = icmp ne i4 %tmp, 0" [edge_detection/edge_detection.cpp:62] ---> Core 25 'Cmp' ST_2 : Operation 75 [1/1] (0.00ns) ---> "%tmp_1 = call i4 @_ssdm_op_PartSelect.i4.i5.i32.i32(i5 %i, i32 1, i32 4)" [edge_detection/edge_detection.cpp:62] ST_2 : Operation 76 [1/1] (1.30ns) ---> "%icmp1 = icmp ne i4 %tmp_1, 0" [edge_detection/edge_detection.cpp:62] ---> Core 25 'Cmp' ST_2 : Operation 77 [1/1] (0.00ns) (grouped into LUT with out node or_cond) ---> "%tmp_mid2 = select i1 %exitcond, i1 %icmp, i1 %icmp1" [edge_detection/edge_detection.cpp:62] ---> Core 26 'Sel' ST_2 : Operation 78 [1/1] (1.37ns) ---> "%i_mid2 = select i1 %exitcond, i5 %i_s, i5 %i" [edge_detection/edge_detection.cpp:56] ---> Core 26 'Sel' ST_2 : Operation 79 [1/1] (0.00ns) ---> "%tmp_i = zext i5 %pos_y_assign_mid2 to i64" [edge_detection/edge_detection.cpp:29->edge_detection/edge_detection.cpp:60] ST_2 : Operation 80 [1/1] (0.00ns) ---> "%temp_array_0_assign_1 = getelementptr [20 x float]* %temp_array_0_assign, i64 0, i64 %tmp_i" [edge_detection/edge_detection.cpp:29->edge_detection/edge_detection.cpp:60] ST_2 : Operation 81 [2/2] (2.32ns) ---> "%crop_0_2 = load float* %temp_array_0_assign_1, align 4" [edge_detection/edge_detection.cpp:29->edge_detection/edge_detection.cpp:60] ---> Core 37 'RAM' ST_2 : Operation 82 [1/1] (0.00ns) ---> "%temp_array_1_assign_1 = getelementptr [20 x float]* %temp_array_1_assign, i64 0, i64 %tmp_i" [edge_detection/edge_detection.cpp:29->edge_detection/edge_detection.cpp:60] ST_2 : Operation 83 [2/2] (2.32ns) ---> "%crop_1_2 = load float* %temp_array_1_assign_1, align 4" [edge_detection/edge_detection.cpp:29->edge_detection/edge_detection.cpp:60] ---> Core 37 'RAM' ST_2 : Operation 84 [1/1] (0.00ns) ---> "%tmp_3 = call i4 @_ssdm_op_PartSelect.i4.i5.i32.i32(i5 %pos_y_assign_mid2, i32 1, i32 4)" [edge_detection/edge_detection.cpp:62] ST_2 : Operation 85 [1/1] (1.30ns) ---> "%icmp2 = icmp ne i4 %tmp_3, 0" [edge_detection/edge_detection.cpp:62] ---> Core 25 'Cmp' ST_2 : Operation 86 [1/1] (1.37ns) (out node of the LUT) ---> "%or_cond = and i1 %tmp_mid2, %icmp2" [edge_detection/edge_detection.cpp:62] ---> Core 27 'LogicGate' ST_2 : Operation 87 [1/1] (0.00ns) ---> "br i1 %or_cond, label %2, label %._crit_edge" [edge_detection/edge_detection.cpp:62] ST_2 : Operation 88 [1/1] (1.78ns) ---> "%j = add i5 %pos_y_assign_mid2, 1" [edge_detection/edge_detection.cpp:56] ---> Core 14 'AddSub' : 5.96ns ST_3 : Operation 89 [1/1] (0.00ns) ---> "%crop_0_0_load = load float* %crop_0_0" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ST_3 : Operation 90 [1/1] (0.00ns) ---> "%crop_0_1_load_1 = load float* %crop_0_1" ST_3 : Operation 91 [1/1] (0.00ns) ---> "%crop_1_0_load = load float* %crop_1_0" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ST_3 : Operation 92 [1/1] (0.00ns) ---> "%crop_1_1_load_1 = load float* %crop_1_1" ST_3 : Operation 93 [1/1] (0.00ns) ---> "%crop_2_0_load = load float* %crop_2_0" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ST_3 : Operation 94 [1/1] (0.00ns) ---> "%crop_2_1_load_1 = load float* %crop_2_1" ST_3 : Operation 95 [1/1] (0.00ns) ---> "store float %crop_2_1_load_1, float* %crop_2_0" ST_3 : Operation 96 [1/1] (0.00ns) ---> "store float %crop_1_1_load_1, float* %crop_1_0" ST_3 : Operation 97 [1/1] (0.00ns) ---> "store float %crop_0_1_load_1, float* %crop_0_0" ST_3 : Operation 98 [1/1] (0.00ns) ---> "br i1 %exitcond_flatten, label %3, label %.reset" ST_3 : Operation 99 [1/1] (0.00ns) ---> "%crop_0_1_load = load float* %crop_0_1" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ST_3 : Operation 100 [1/1] (0.00ns) ---> "%crop_1_1_load = load float* %crop_1_1" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ST_3 : Operation 101 [1/1] (0.00ns) ---> "%crop_2_1_load = load float* %crop_2_1" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ST_3 : Operation 102 [1/1] (3.63ns) ---> "%tmp_5 = call float @_ssdm_op_Read.ap_fifo.volatile.floatP(float* %in_stream_V)" [edge_detection/edge_detection.cpp:59] ---> Core 32 'FIFO' ST_3 : Operation 103 [1/2] (2.32ns) ---> "%crop_0_2 = load float* %temp_array_0_assign_1, align 4" [edge_detection/edge_detection.cpp:29->edge_detection/edge_detection.cpp:60] ---> Core 37 'RAM' ST_3 : Operation 104 [1/2] (2.32ns) ---> "%crop_1_2 = load float* %temp_array_1_assign_1, align 4" [edge_detection/edge_detection.cpp:29->edge_detection/edge_detection.cpp:60] ---> Core 37 'RAM' ST_3 : Operation 105 [1/1] (2.32ns) ---> "store float %crop_1_2, float* %temp_array_0_assign_1, align 4" [edge_detection/edge_detection.cpp:33->edge_detection/edge_detection.cpp:60] ---> Core 37 'RAM' ST_3 : Operation 106 [1/1] (2.32ns) ---> "store float %tmp_5, float* %temp_array_1_assign_1, align 4" [edge_detection/edge_detection.cpp:34->edge_detection/edge_detection.cpp:60] ---> Core 37 'RAM' ST_3 : Operation 107 [4/4] (5.70ns) ---> "%tmp_4_0_i = fmul float %crop_0_0_load, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' ST_3 : Operation 108 [1/1] (0.00ns) ---> "store float %tmp_5, float* %crop_2_1" [edge_detection/edge_detection.cpp:59] ST_3 : Operation 109 [1/1] (0.00ns) ---> "store float %crop_1_2, float* %crop_1_1" [edge_detection/edge_detection.cpp:29->edge_detection/edge_detection.cpp:60] ST_3 : Operation 110 [1/1] (0.00ns) ---> "store float %crop_0_2, float* %crop_0_1" [edge_detection/edge_detection.cpp:29->edge_detection/edge_detection.cpp:60] : 5.70ns ST_4 : Operation 111 [3/4] (5.70ns) ---> "%tmp_4_0_i = fmul float %crop_0_0_load, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 5.70ns ST_5 : Operation 112 [2/4] (5.70ns) ---> "%tmp_4_0_i = fmul float %crop_0_0_load, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 5.70ns ST_6 : Operation 113 [1/4] (5.70ns) ---> "%tmp_4_0_i = fmul float %crop_0_0_load, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_7 : Operation 114 [5/5] (7.25ns) ---> "%result_2_0_i = fadd float %tmp_4_0_i, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_8 : Operation 115 [4/5] (7.25ns) ---> "%result_2_0_i = fadd float %tmp_4_0_i, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_9 : Operation 116 [3/5] (7.25ns) ---> "%result_2_0_i = fadd float %tmp_4_0_i, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_10 : Operation 117 [2/5] (7.25ns) ---> "%result_2_0_i = fadd float %tmp_4_0_i, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_11 : Operation 118 [1/5] (7.25ns) ---> "%result_2_0_i = fadd float %tmp_4_0_i, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_12 : Operation 119 [5/5] (7.25ns) ---> "%result_2_0_1_i = fadd float %result_2_0_i, %crop_0_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_13 : Operation 120 [4/5] (7.25ns) ---> "%result_2_0_1_i = fadd float %result_2_0_i, %crop_0_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_13 : Operation 121 [4/4] (5.70ns) ---> "%tmp_4_0_2_i = fmul float %crop_0_2, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_14 : Operation 122 [3/5] (7.25ns) ---> "%result_2_0_1_i = fadd float %result_2_0_i, %crop_0_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_14 : Operation 123 [3/4] (5.70ns) ---> "%tmp_4_0_2_i = fmul float %crop_0_2, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_15 : Operation 124 [2/5] (7.25ns) ---> "%result_2_0_1_i = fadd float %result_2_0_i, %crop_0_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_15 : Operation 125 [2/4] (5.70ns) ---> "%tmp_4_0_2_i = fmul float %crop_0_2, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_16 : Operation 126 [1/5] (7.25ns) ---> "%result_2_0_1_i = fadd float %result_2_0_i, %crop_0_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_16 : Operation 127 [1/4] (5.70ns) ---> "%tmp_4_0_2_i = fmul float %crop_0_2, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_17 : Operation 128 [5/5] (7.25ns) ---> "%result_2_0_2_i = fadd float %result_2_0_1_i, %tmp_4_0_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_18 : Operation 129 [4/5] (7.25ns) ---> "%result_2_0_2_i = fadd float %result_2_0_1_i, %tmp_4_0_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_19 : Operation 130 [3/5] (7.25ns) ---> "%result_2_0_2_i = fadd float %result_2_0_1_i, %tmp_4_0_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_20 : Operation 131 [2/5] (7.25ns) ---> "%result_2_0_2_i = fadd float %result_2_0_1_i, %tmp_4_0_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_21 : Operation 132 [1/5] (7.25ns) ---> "%result_2_0_2_i = fadd float %result_2_0_1_i, %tmp_4_0_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_22 : Operation 133 [5/5] (7.25ns) ---> "%result_2_1_i = fadd float %result_2_0_2_i, %crop_1_0_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_23 : Operation 134 [4/5] (7.25ns) ---> "%result_2_1_i = fadd float %result_2_0_2_i, %crop_1_0_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_23 : Operation 135 [4/4] (5.70ns) ---> "%tmp_4_1_1_i = fmul float %crop_1_1_load, -4.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_24 : Operation 136 [3/5] (7.25ns) ---> "%result_2_1_i = fadd float %result_2_0_2_i, %crop_1_0_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_24 : Operation 137 [3/4] (5.70ns) ---> "%tmp_4_1_1_i = fmul float %crop_1_1_load, -4.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_25 : Operation 138 [2/5] (7.25ns) ---> "%result_2_1_i = fadd float %result_2_0_2_i, %crop_1_0_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_25 : Operation 139 [2/4] (5.70ns) ---> "%tmp_4_1_1_i = fmul float %crop_1_1_load, -4.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_26 : Operation 140 [1/5] (7.25ns) ---> "%result_2_1_i = fadd float %result_2_0_2_i, %crop_1_0_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_26 : Operation 141 [1/4] (5.70ns) ---> "%tmp_4_1_1_i = fmul float %crop_1_1_load, -4.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_27 : Operation 142 [5/5] (7.25ns) ---> "%result_2_1_1_i = fadd float %result_2_1_i, %tmp_4_1_1_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_28 : Operation 143 [4/5] (7.25ns) ---> "%result_2_1_1_i = fadd float %result_2_1_i, %tmp_4_1_1_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_29 : Operation 144 [3/5] (7.25ns) ---> "%result_2_1_1_i = fadd float %result_2_1_i, %tmp_4_1_1_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_30 : Operation 145 [2/5] (7.25ns) ---> "%result_2_1_1_i = fadd float %result_2_1_i, %tmp_4_1_1_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_31 : Operation 146 [1/5] (7.25ns) ---> "%result_2_1_1_i = fadd float %result_2_1_i, %tmp_4_1_1_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_32 : Operation 147 [5/5] (7.25ns) ---> "%result_2_1_2_i = fadd float %result_2_1_1_i, %crop_1_2" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_33 : Operation 148 [4/5] (7.25ns) ---> "%result_2_1_2_i = fadd float %result_2_1_1_i, %crop_1_2" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_33 : Operation 149 [4/4] (5.70ns) ---> "%tmp_4_2_i = fmul float %crop_2_0_load, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_34 : Operation 150 [3/5] (7.25ns) ---> "%result_2_1_2_i = fadd float %result_2_1_1_i, %crop_1_2" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_34 : Operation 151 [3/4] (5.70ns) ---> "%tmp_4_2_i = fmul float %crop_2_0_load, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_35 : Operation 152 [2/5] (7.25ns) ---> "%result_2_1_2_i = fadd float %result_2_1_1_i, %crop_1_2" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_35 : Operation 153 [2/4] (5.70ns) ---> "%tmp_4_2_i = fmul float %crop_2_0_load, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_36 : Operation 154 [1/5] (7.25ns) ---> "%result_2_1_2_i = fadd float %result_2_1_1_i, %crop_1_2" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_36 : Operation 155 [1/4] (5.70ns) ---> "%tmp_4_2_i = fmul float %crop_2_0_load, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_37 : Operation 156 [5/5] (7.25ns) ---> "%result_2_2_i = fadd float %result_2_1_2_i, %tmp_4_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_38 : Operation 157 [4/5] (7.25ns) ---> "%result_2_2_i = fadd float %result_2_1_2_i, %tmp_4_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_39 : Operation 158 [3/5] (7.25ns) ---> "%result_2_2_i = fadd float %result_2_1_2_i, %tmp_4_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_40 : Operation 159 [2/5] (7.25ns) ---> "%result_2_2_i = fadd float %result_2_1_2_i, %tmp_4_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_41 : Operation 160 [1/5] (7.25ns) ---> "%result_2_2_i = fadd float %result_2_1_2_i, %tmp_4_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_42 : Operation 161 [5/5] (7.25ns) ---> "%result_2_2_1_i = fadd float %result_2_2_i, %crop_2_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_43 : Operation 162 [4/5] (7.25ns) ---> "%result_2_2_1_i = fadd float %result_2_2_i, %crop_2_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_43 : Operation 163 [4/4] (5.70ns) ---> "%tmp_4_2_2_i = fmul float %tmp_5, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_44 : Operation 164 [3/5] (7.25ns) ---> "%result_2_2_1_i = fadd float %result_2_2_i, %crop_2_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_44 : Operation 165 [3/4] (5.70ns) ---> "%tmp_4_2_2_i = fmul float %tmp_5, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_45 : Operation 166 [2/5] (7.25ns) ---> "%result_2_2_1_i = fadd float %result_2_2_i, %crop_2_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_45 : Operation 167 [2/4] (5.70ns) ---> "%tmp_4_2_2_i = fmul float %tmp_5, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_46 : Operation 168 [1/5] (7.25ns) ---> "%result_2_2_1_i = fadd float %result_2_2_i, %crop_2_1_load" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' ST_46 : Operation 169 [1/4] (5.70ns) ---> "%tmp_4_2_2_i = fmul float %tmp_5, 0.000000e+00" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 100 'FMul' : 7.26ns ST_47 : Operation 170 [5/5] (7.25ns) ---> "%tmp_4 = fadd float %result_2_2_1_i, %tmp_4_2_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_48 : Operation 171 [4/5] (7.25ns) ---> "%tmp_4 = fadd float %result_2_2_1_i, %tmp_4_2_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_49 : Operation 172 [3/5] (7.25ns) ---> "%tmp_4 = fadd float %result_2_2_1_i, %tmp_4_2_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_50 : Operation 173 [2/5] (7.25ns) ---> "%tmp_4 = fadd float %result_2_2_1_i, %tmp_4_2_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 7.26ns ST_51 : Operation 174 [1/5] (7.25ns) ---> "%tmp_4 = fadd float %result_2_2_1_i, %tmp_4_2_2_i" [edge_detection/edge_detection.cpp:8->edge_detection/edge_detection.cpp:61] ---> Core 99 'FAddSub' : 3.63ns ST_52 : Operation 175 [1/1] (0.00ns) ---> "call void (...)* @_ssdm_op_SpecLoopName([20 x i8]* @conv_rows_conv_cols_s)" ST_52 : Operation 176 [1/1] (0.00ns) ---> "%empty_11 = call i32 (...)* @_ssdm_op_SpecLoopTripCount(i64 400, i64 400, i64 400)" ST_52 : Operation 177 [1/1] (0.00ns) ---> "call void (...)* @_ssdm_op_SpecLoopName([10 x i8]* @p_str5) nounwind" [edge_detection/edge_detection.cpp:56] ST_52 : Operation 178 [1/1] (0.00ns) ---> "%tmp_6 = call i32 (...)* @_ssdm_op_SpecRegionBegin([10 x i8]* @p_str5)" [edge_detection/edge_detection.cpp:56] ST_52 : Operation 179 [1/1] (0.00ns) ---> "call void (...)* @_ssdm_op_SpecPipeline(i32 -1, i32 1, i32 1, i32 0, [1 x i8]* @p_str1) nounwind" [edge_detection/edge_detection.cpp:57] ST_52 : Operation 180 [1/1] (3.63ns) ---> "call void @_ssdm_op_Write.ap_fifo.volatile.floatP(float* %out_stream_V, float %tmp_4)" [edge_detection/edge_detection.cpp:63] ---> Core 32 'FIFO' ST_52 : Operation 181 [1/1] (0.00ns) ---> "br label %._crit_edge" [edge_detection/edge_detection.cpp:63] ST_52 : Operation 182 [1/1] (0.00ns) ---> "%empty = call i32 (...)* @_ssdm_op_SpecRegionEnd([10 x i8]* @p_str5, i32 %tmp_6)" [edge_detection/edge_detection.cpp:64] ST_52 : Operation 183 [1/1] (0.00ns) ---> "br label %1" : 0.00ns ST_53 : Operation 184 [1/1] (0.00ns) ---> "ret void" [edge_detection/edge_detection.cpp:66] ============================================================ + Verbose Summary: Binding ============================================================ STG Binding: ---------------- STG Properties BEGIN ---------------- - Is combinational: 0 - Is one-state seq: 0 - Is datapath-only: 0 - Is pipelined: 0 - Is top level: 0 Port [ Return ] is wired: 1; IO mode=ap_ctrl_hs:ce=0 Port [ in_stream_V]: wired=1; compound=1; hidden=0; nouse=0; global=0; static=0; extern=0; dir=0; type=3; pingpong=0; private_global=0; IO mode=ap_fifo:ce=0 Port [ out_stream_V]: wired=1; compound=1; hidden=0; nouse=0; global=0; static=0; extern=0; dir=1; type=3; pingpong=0; private_global=0; IO mode=ap_fifo:ce=0 ---------------- STG Properties END ------------------ ---------------- Datapath Model BEGIN ---------------- crop_0_0 (alloca ) [ 001111111111111111111111111111111111111111111111111110] crop_0_1 (alloca ) [ 001111111111111111111111111111111111111111111111111110] crop_1_0 (alloca ) [ 001111111111111111111111111111111111111111111111111110] crop_1_1 (alloca ) [ 001111111111111111111111111111111111111111111111111110] crop_2_0 (alloca ) [ 001111111111111111111111111111111111111111111111111110] crop_2_1 (alloca ) [ 001111111111111111111111111111111111111111111111111110] StgValue_60 (specinterface ) [ 000000000000000000000000000000000000000000000000000000] StgValue_61 (specinterface ) [ 000000000000000000000000000000000000000000000000000000] temp_array_0_assign (alloca ) [ 001111111111111111111111111111111111111111111111111110] temp_array_1_assign (alloca ) [ 001111111111111111111111111111111111111111111111111110] StgValue_64 (br ) [ 011111111111111111111111111111111111111111111111111110] indvar_flatten (phi ) [ 001000000000000000000000000000000000000000000000000000] i (phi ) [ 001000000000000000000000000000000000000000000000000000] pos_y_assign (phi ) [ 001000000000000000000000000000000000000000000000000000] exitcond_flatten (icmp ) [ 001111111111111111111111111111111111111111111111111110] indvar_flatten_next (add ) [ 011111111111111111111111111111111111111111111111111110] exitcond (icmp ) [ 000000000000000000000000000000000000000000000000000000] pos_y_assign_mid2 (select ) [ 000000000000000000000000000000000000000000000000000000] i_s (add ) [ 000000000000000000000000000000000000000000000000000000] tmp (partselect ) [ 000000000000000000000000000000000000000000000000000000] icmp (icmp ) [ 000000000000000000000000000000000000000000000000000000] tmp_1 (partselect ) [ 000000000000000000000000000000000000000000000000000000] icmp1 (icmp ) [ 000000000000000000000000000000000000000000000000000000] tmp_mid2 (select ) [ 000000000000000000000000000000000000000000000000000000] i_mid2 (select ) [ 011111111111111111111111111111111111111111111111111110] tmp_i (zext ) [ 000000000000000000000000000000000000000000000000000000] temp_array_0_assign_1 (getelementptr ) [ 001100000000000000000000000000000000000000000000000000] temp_array_1_assign_1 (getelementptr ) [ 001100000000000000000000000000000000000000000000000000] tmp_3 (partselect ) [ 000000000000000000000000000000000000000000000000000000] icmp2 (icmp ) [ 000000000000000000000000000000000000000000000000000000] or_cond (and ) [ 001111111111111111111111111111111111111111111111111110] StgValue_87 (br ) [ 000000000000000000000000000000000000000000000000000000] j (add ) [ 011111111111111111111111111111111111111111111111111110] crop_0_0_load (load ) [ 001011100000000000000000000000000000000000000000000000] crop_0_1_load_1 (load ) [ 000000000000000000000000000000000000000000000000000000] crop_1_0_load (load ) [ 001011111111111111111111111000000000000000000000000000] crop_1_1_load_1 (load ) [ 000000000000000000000000000000000000000000000000000000] crop_2_0_load (load ) [ 001011111111111111111111111111111111100000000000000000] crop_2_1_load_1 (load ) [ 000000000000000000000000000000000000000000000000000000] StgValue_95 (store ) [ 000000000000000000000000000000000000000000000000000000] StgValue_96 (store ) [ 000000000000000000000000000000000000000000000000000000] StgValue_97 (store ) [ 000000000000000000000000000000000000000000000000000000] StgValue_98 (br ) [ 000000000000000000000000000000000000000000000000000000] crop_0_1_load (load ) [ 001011111111111110000000000000000000000000000000000000] crop_1_1_load (load ) [ 001011111111111111111111111000000000000000000000000000] crop_2_1_load (load ) [ 001011111111111111111111111111111111111111111110000000] tmp_5 (read ) [ 001011111111111111111111111111111111111111111110000000] crop_0_2 (load ) [ 001011111111111110000000000000000000000000000000000000] crop_1_2 (load ) [ 001011111111111111111111111111111111100000000000000000] StgValue_105 (store ) [ 000000000000000000000000000000000000000000000000000000] StgValue_106 (store ) [ 000000000000000000000000000000000000000000000000000000] StgValue_108 (store ) [ 000000000000000000000000000000000000000000000000000000] StgValue_109 (store ) [ 000000000000000000000000000000000000000000000000000000] StgValue_110 (store ) [ 000000000000000000000000000000000000000000000000000000] tmp_4_0_i (fmul ) [ 001000011111000000000000000000000000000000000000000000] result_2_0_i (fadd ) [ 001000000000111110000000000000000000000000000000000000] result_2_0_1_i (fadd ) [ 001000000000000001111100000000000000000000000000000000] tmp_4_0_2_i (fmul ) [ 001000000000000001111100000000000000000000000000000000] result_2_0_2_i (fadd ) [ 001000000000000000000011111000000000000000000000000000] result_2_1_i (fadd ) [ 001000000000000000000000000111110000000000000000000000] tmp_4_1_1_i (fmul ) [ 001000000000000000000000000111110000000000000000000000] result_2_1_1_i (fadd ) [ 001000000000000000000000000000001111100000000000000000] result_2_1_2_i (fadd ) [ 001000000000000000000000000000000000011111000000000000] tmp_4_2_i (fmul ) [ 001000000000000000000000000000000000011111000000000000] result_2_2_i (fadd ) [ 001000000000000000000000000000000000000000111110000000] result_2_2_1_i (fadd ) [ 001000000000000000000000000000000000000000000001111100] tmp_4_2_2_i (fmul ) [ 001000000000000000000000000000000000000000000001111100] tmp_4 (fadd ) [ 001000000000000000000000000000000000000000000000000010] StgValue_175 (specloopname ) [ 000000000000000000000000000000000000000000000000000000] empty_11 (speclooptripcount) [ 000000000000000000000000000000000000000000000000000000] StgValue_177 (specloopname ) [ 000000000000000000000000000000000000000000000000000000] tmp_6 (specregionbegin ) [ 000000000000000000000000000000000000000000000000000000] StgValue_179 (specpipeline ) [ 000000000000000000000000000000000000000000000000000000] StgValue_180 (write ) [ 000000000000000000000000000000000000000000000000000000] StgValue_181 (br ) [ 000000000000000000000000000000000000000000000000000000] empty (specregionend ) [ 000000000000000000000000000000000000000000000000000000] StgValue_183 (br ) [ 011111111111111111111111111111111111111111111111111110] StgValue_184 (ret ) [ 000000000000000000000000000000000000000000000000000000] ---------------- Datapath Model END ------------------ * FSMD analyzer results: - Output states: Port: out_stream_V | {52 } - Input state : Port: convolve : in_stream_V | {3 } - Chain level: State 1 State 2 exitcond_flatten : 1 indvar_flatten_next : 1 exitcond : 1 pos_y_assign_mid2 : 2 i_s : 1 tmp : 2 icmp : 3 tmp_1 : 1 icmp1 : 2 tmp_mid2 : 4 i_mid2 : 2 tmp_i : 3 temp_array_0_assign_1 : 4 crop_0_2 : 5 temp_array_1_assign_1 : 4 crop_1_2 : 5 tmp_3 : 3 icmp2 : 4 or_cond : 5 StgValue_87 : 5 j : 3 State 3 StgValue_95 : 1 StgValue_96 : 1 StgValue_97 : 1 StgValue_105 : 1 tmp_4_0_i : 1 StgValue_109 : 1 StgValue_110 : 1 State 4 State 5 State 6 State 7 State 8 State 9 State 10 State 11 State 12 State 13 State 14 State 15 State 16 State 17 State 18 State 19 State 20 State 21 State 22 State 23 State 24 State 25 State 26 State 27 State 28 State 29 State 30 State 31 State 32 State 33 State 34 State 35 State 36 State 37 State 38 State 39 State 40 State 41 State 42 State 43 State 44 State 45 State 46 State 47 State 48 State 49 State 50 State 51 State 52 empty : 1 State 53 ============================================================ + Verbose Summary: Datapath Resource usage ============================================================ * Functional unit list: |----------|----------------------------|---------|---------|---------| | Operation| Functional Unit | DSP48E | FF | LUT | |----------|----------------------------|---------|---------|---------| | | grp_fu_198 | 2 | 205 | 390 | | | grp_fu_203 | 2 | 205 | 390 | | | grp_fu_207 | 2 | 205 | 390 | | | grp_fu_211 | 2 | 205 | 390 | | fadd | grp_fu_215 | 2 | 205 | 390 | | | grp_fu_219 | 2 | 205 | 390 | | | grp_fu_223 | 2 | 205 | 390 | | | grp_fu_227 | 2 | 205 | 390 | | | grp_fu_231 | 2 | 205 | 390 | |----------|----------------------------|---------|---------|---------| | | grp_fu_235 | 3 | 143 | 321 | | | grp_fu_240 | 3 | 143 | 321 | | fmul | grp_fu_245 | 3 | 143 | 321 | | | grp_fu_250 | 3 | 143 | 321 | | | grp_fu_255 | 3 | 143 | 321 | |----------|----------------------------|---------|---------|---------| | | exitcond_flatten_fu_260 | 0 | 0 | 13 | | | exitcond_fu_272 | 0 | 0 | 11 | | icmp | icmp_fu_302 | 0 | 0 | 9 | | | icmp1_fu_318 | 0 | 0 | 9 | | | icmp2_fu_356 | 0 | 0 | 9 | |----------|----------------------------|---------|---------|---------| | | indvar_flatten_next_fu_266 | 0 | 0 | 16 | | add | i_s_fu_286 | 0 | 0 | 15 | | | j_fu_368 | 0 | 0 | 15 | |----------|----------------------------|---------|---------|---------| | | pos_y_assign_mid2_fu_278 | 0 | 0 | 5 | | select | tmp_mid2_fu_324 | 0 | 0 | 2 | | | i_mid2_fu_332 | 0 | 0 | 5 | |----------|----------------------------|---------|---------|---------| | and | or_cond_fu_362 | 0 | 0 | 8 | |----------|----------------------------|---------|---------|---------| | read | tmp_5_read_fu_122 | 0 | 0 | 0 | |----------|----------------------------|---------|---------|---------| | write | StgValue_180_write_fu_128 | 0 | 0 | 0 | |----------|----------------------------|---------|---------|---------| | | tmp_fu_292 | 0 | 0 | 0 | |partselect| tmp_1_fu_308 | 0 | 0 | 0 | | | tmp_3_fu_346 | 0 | 0 | 0 | |----------|----------------------------|---------|---------|---------| | zext | tmp_i_fu_340 | 0 | 0 | 0 | |----------|----------------------------|---------|---------|---------| | Total | | 33 | 2560 | 5232 | |----------|----------------------------|---------|---------|---------| Memories: +-------------------+--------+--------+--------+ | | BRAM | FF | LUT | +-------------------+--------+--------+--------+ |temp_array_0_assign| 0 | 64 | 10 | |temp_array_1_assign| 0 | 64 | 10 | +-------------------+--------+--------+--------+ | Total | 0 | 128 | 20 | +-------------------+--------+--------+--------+ * Register list: +-----------------------------+--------+ | | FF | +-----------------------------+--------+ | crop_0_0_load_reg_506 | 32 | | crop_0_0_reg_432 | 32 | | crop_0_1_load_reg_521 | 32 | | crop_0_1_reg_438 | 32 | | crop_0_2_reg_541 | 32 | | crop_1_0_load_reg_511 | 32 | | crop_1_0_reg_445 | 32 | | crop_1_1_load_reg_526 | 32 | | crop_1_1_reg_451 | 32 | | crop_1_2_reg_546 | 32 | | crop_2_0_load_reg_516 | 32 | | crop_2_0_reg_458 | 32 | | crop_2_1_load_reg_531 | 32 | | crop_2_1_reg_464 | 32 | | exitcond_flatten_reg_471 | 1 | | i_mid2_reg_480 | 5 | | i_reg_176 | 5 | | indvar_flatten_next_reg_475 | 9 | | indvar_flatten_reg_165 | 9 | | j_reg_501 | 5 | | or_cond_reg_497 | 1 | | pos_y_assign_reg_187 | 5 | | result_2_0_1_i_reg_561 | 32 | | result_2_0_2_i_reg_571 | 32 | | result_2_0_i_reg_556 | 32 | | result_2_1_1_i_reg_586 | 32 | | result_2_1_2_i_reg_591 | 32 | | result_2_1_i_reg_576 | 32 | | result_2_2_1_i_reg_606 | 32 | | result_2_2_i_reg_601 | 32 | |temp_array_0_assign_1_reg_485| 5 | |temp_array_1_assign_1_reg_491| 5 | | tmp_4_0_2_i_reg_566 | 32 | | tmp_4_0_i_reg_551 | 32 | | tmp_4_1_1_i_reg_581 | 32 | | tmp_4_2_2_i_reg_611 | 32 | | tmp_4_2_i_reg_596 | 32 | | tmp_4_reg_616 | 32 | | tmp_5_reg_536 | 32 | +-----------------------------+--------+ | Total | 978 | +-----------------------------+--------+ * Multiplexer (MUX) list: |-------------------|------|------|------|--------||---------||---------| | Comp | Pin | Size | BW | S x BW || Delay || LUT | |-------------------|------|------|------|--------||---------||---------| | grp_access_fu_141 | p0 | 2 | 5 | 10 || 9 | | grp_access_fu_152 | p0 | 2 | 5 | 10 || 9 | | grp_fu_235 | p0 | 2 | 32 | 64 || 9 | |-------------------|------|------|------|--------||---------||---------| | Total | | | | 84 || 5.307 || 27 | |-------------------|------|------|------|--------||---------||---------| * Summary: +-----------+--------+--------+--------+--------+--------+ | | BRAM | DSP48E | Delay | FF | LUT | +-----------+--------+--------+--------+--------+--------+ | Function | - | 33 | - | 2560 | 5232 | | Memory | 0 | - | - | 128 | 20 | |Multiplexer| - | - | 5 | - | 27 | | Register | - | - | - | 978 | - | +-----------+--------+--------+--------+--------+--------+ | Total | 0 | 33 | 5 | 3666 | 5279 | +-----------+--------+--------+--------+--------+--------+