8 use IEEE.std_logic_1164.
all;
9 use IEEE.numeric_std.
all;
13 ap_ready : OUT STD_LOGIC;
14 x_2_val : IN STD_LOGIC_VECTOR (15 downto 0);
15 x_3_val : IN STD_LOGIC_VECTOR (15 downto 0);
16 x_6_val : IN STD_LOGIC_VECTOR (15 downto 0);
17 ap_return : OUT STD_LOGIC_VECTOR (5 downto 0) );
22 constant ap_const_logic_1 : STD_LOGIC := '1';
23 constant ap_const_boolean_1 : BOOLEAN := true;
24 constant ap_const_lv16_2B : STD_LOGIC_VECTOR (15 downto 0) := "0000000000101011";
25 constant ap_const_lv16_3C : STD_LOGIC_VECTOR (15 downto 0) := "0000000000111100";
26 constant ap_const_lv32_3 : STD_LOGIC_VECTOR (31 downto 0) := "00000000000000000000000000000011";
27 constant ap_const_lv32_F : STD_LOGIC_VECTOR (31 downto 0) := "00000000000000000000000000001111";
28 constant ap_const_lv13_0 : STD_LOGIC_VECTOR (12 downto 0) := "0000000000000";
29 constant ap_const_lv1_1 : STD_LOGIC_VECTOR (0 downto 0) := "1";
30 constant ap_const_lv2_2 : STD_LOGIC_VECTOR (1 downto 0) := "10";
31 constant ap_const_lv2_3 : STD_LOGIC_VECTOR (1 downto 0) := "11";
32 constant ap_const_lv6_2D : STD_LOGIC_VECTOR (5 downto 0) := "101101";
33 constant ap_const_lv6_33 : STD_LOGIC_VECTOR (5 downto 0) := "110011";
34 constant ap_const_lv6_2A : STD_LOGIC_VECTOR (5 downto 0) := "101010";
35 constant ap_const_lv6_2E : STD_LOGIC_VECTOR (5 downto 0) := "101110";
36 constant ap_const_logic_0 : STD_LOGIC := '0';
38 attribute shreg_extract : string;
39 signal tmp_fu_80_p4 : STD_LOGIC_VECTOR (12 downto 0);
40 signal comparison_fu_68_p2 : STD_LOGIC_VECTOR (0 downto 0);
41 signal comparison_5_fu_74_p2 : STD_LOGIC_VECTOR (0 downto 0);
42 signal comparison_6_fu_90_p2 : STD_LOGIC_VECTOR (0 downto 0);
43 signal activation_9_fu_96_p2 : STD_LOGIC_VECTOR (0 downto 0);
44 signal activation_fu_102_p2 : STD_LOGIC_VECTOR (0 downto 0);
45 signal xor_ln170_fu_114_p2 : STD_LOGIC_VECTOR (0 downto 0);
46 signal activation_12_fu_108_p2 : STD_LOGIC_VECTOR (0 downto 0);
47 signal zext_ln170_fu_120_p1 : STD_LOGIC_VECTOR (1 downto 0);
48 signal or_ln170_fu_124_p2 : STD_LOGIC_VECTOR (0 downto 0);
49 signal select_ln170_fu_130_p3 : STD_LOGIC_VECTOR (1 downto 0);
50 signal agg_result_fu_146_p9 : STD_LOGIC_VECTOR (5 downto 0);
51 signal agg_result_fu_146_p10 : STD_LOGIC_VECTOR (1 downto 0);
52 signal agg_result_fu_146_p11 : STD_LOGIC_VECTOR (5 downto 0);
53 signal agg_result_fu_146_p1 : STD_LOGIC_VECTOR (1 downto 0);
54 signal agg_result_fu_146_p3 : STD_LOGIC_VECTOR (1 downto 0);
55 signal agg_result_fu_146_p5 : STD_LOGIC_VECTOR (1 downto 0);
56 signal agg_result_fu_146_p7 : STD_LOGIC_VECTOR (1 downto 0);
57 signal ap_ce_reg : STD_LOGIC;
63 CASE0 :
STD_LOGIC_VECTOR (
1 downto 0);
65 CASE1 :
STD_LOGIC_VECTOR (
1 downto 0);
67 CASE2 :
STD_LOGIC_VECTOR (
1 downto 0);
69 CASE3 :
STD_LOGIC_VECTOR (
1 downto 0);
73 dout_WIDTH :
INTEGER );
75 din0 :
IN STD_LOGIC_VECTOR (
5 downto 0);
76 din1 :
IN STD_LOGIC_VECTOR (
5 downto 0);
77 din2 :
IN STD_LOGIC_VECTOR (
5 downto 0);
78 din3 :
IN STD_LOGIC_VECTOR (
5 downto 0);
79 def :
IN STD_LOGIC_VECTOR (
5 downto 0);
80 sel :
IN STD_LOGIC_VECTOR (
1 downto 0);
81 dout :
OUT STD_LOGIC_VECTOR (
5 downto 0) );
103 din0 => ap_const_lv6_2D,
104 din1 => ap_const_lv6_33,
105 din2 => ap_const_lv6_2A,
106 din3 => ap_const_lv6_2E,
107 def => agg_result_fu_146_p9,
108 sel => agg_result_fu_146_p10,
109 dout => agg_result_fu_146_p11
);
114 activation_12_fu_108_p2 <= (comparison_6_fu_90_p2 and activation_9_fu_96_p2);
115 activation_9_fu_96_p2 <= (comparison_fu_68_p2 xor ap_const_lv1_1);
116 activation_fu_102_p2 <= (comparison_fu_68_p2 and comparison_5_fu_74_p2);
117 agg_result_fu_146_p10 <=
118 select_ln170_fu_130_p3 when (or_ln170_fu_124_p2(0) = '1') else
120 agg_result_fu_146_p9 <= "XXXXXX";
121 ap_ready <= ap_const_logic_1;
122 ap_return <= agg_result_fu_146_p11;
123 comparison_5_fu_74_p2 <= "1" when (unsigned(x_6_val) < unsigned(ap_const_lv16_3C)) else "0";
124 comparison_6_fu_90_p2 <= "1" when (tmp_fu_80_p4 = ap_const_lv13_0) else "0";
125 comparison_fu_68_p2 <= "1" when (unsigned(x_2_val) < unsigned(ap_const_lv16_2B)) else "0";
126 or_ln170_fu_124_p2 <= (comparison_fu_68_p2 or activation_12_fu_108_p2);
127 select_ln170_fu_130_p3 <=
128 zext_ln170_fu_120_p1 when (comparison_fu_68_p2(0) = '1') else
130 tmp_fu_80_p4 <= x_3_val(15 downto 3);
131 xor_ln170_fu_114_p2 <= (ap_const_lv1_1 xor activation_fu_102_p2);
132 zext_ln170_fu_120_p1 <= std_logic_vector(IEEE.numeric_std.resize(unsigned(xor_ln170_fu_114_p2),2));