8 use IEEE.std_logic_1164.
all;
9 use IEEE.numeric_std.
all;
13 ap_ready : OUT STD_LOGIC;
14 x_0_val : IN STD_LOGIC_VECTOR (15 downto 0);
15 x_5_val : IN STD_LOGIC_VECTOR (15 downto 0);
16 x_9_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_17 : STD_LOGIC_VECTOR (15 downto 0) := "0000000000010111";
25 constant ap_const_lv16_342 : STD_LOGIC_VECTOR (15 downto 0) := "0000001101000010";
26 constant ap_const_lv16_41 : STD_LOGIC_VECTOR (15 downto 0) := "0000000001000001";
27 constant ap_const_lv1_1 : STD_LOGIC_VECTOR (0 downto 0) := "1";
28 constant ap_const_lv2_2 : STD_LOGIC_VECTOR (1 downto 0) := "10";
29 constant ap_const_lv2_3 : STD_LOGIC_VECTOR (1 downto 0) := "11";
30 constant ap_const_lv6_2D : STD_LOGIC_VECTOR (5 downto 0) := "101101";
31 constant ap_const_lv6_33 : STD_LOGIC_VECTOR (5 downto 0) := "110011";
32 constant ap_const_lv6_2E : STD_LOGIC_VECTOR (5 downto 0) := "101110";
33 constant ap_const_lv6_23 : STD_LOGIC_VECTOR (5 downto 0) := "100011";
34 constant ap_const_logic_0 : STD_LOGIC := '0';
36 attribute shreg_extract : string;
37 signal comparison_fu_62_p2 : STD_LOGIC_VECTOR (0 downto 0);
38 signal comparison_30_fu_68_p2 : STD_LOGIC_VECTOR (0 downto 0);
39 signal comparison_31_fu_74_p2 : STD_LOGIC_VECTOR (0 downto 0);
40 signal activation_59_fu_80_p2 : STD_LOGIC_VECTOR (0 downto 0);
41 signal activation_fu_86_p2 : STD_LOGIC_VECTOR (0 downto 0);
42 signal xor_ln170_fu_98_p2 : STD_LOGIC_VECTOR (0 downto 0);
43 signal activation_62_fu_92_p2 : STD_LOGIC_VECTOR (0 downto 0);
44 signal zext_ln170_fu_104_p1 : STD_LOGIC_VECTOR (1 downto 0);
45 signal or_ln170_fu_108_p2 : STD_LOGIC_VECTOR (0 downto 0);
46 signal select_ln170_fu_114_p3 : STD_LOGIC_VECTOR (1 downto 0);
47 signal agg_result_fu_130_p9 : STD_LOGIC_VECTOR (5 downto 0);
48 signal agg_result_fu_130_p10 : STD_LOGIC_VECTOR (1 downto 0);
49 signal agg_result_fu_130_p11 : STD_LOGIC_VECTOR (5 downto 0);
50 signal agg_result_fu_130_p1 : STD_LOGIC_VECTOR (1 downto 0);
51 signal agg_result_fu_130_p3 : STD_LOGIC_VECTOR (1 downto 0);
52 signal agg_result_fu_130_p5 : STD_LOGIC_VECTOR (1 downto 0);
53 signal agg_result_fu_130_p7 : STD_LOGIC_VECTOR (1 downto 0);
54 signal ap_ce_reg : STD_LOGIC;
60 CASE0 :
STD_LOGIC_VECTOR (
1 downto 0);
62 CASE1 :
STD_LOGIC_VECTOR (
1 downto 0);
64 CASE2 :
STD_LOGIC_VECTOR (
1 downto 0);
66 CASE3 :
STD_LOGIC_VECTOR (
1 downto 0);
70 dout_WIDTH :
INTEGER );
72 din0 :
IN STD_LOGIC_VECTOR (
5 downto 0);
73 din1 :
IN STD_LOGIC_VECTOR (
5 downto 0);
74 din2 :
IN STD_LOGIC_VECTOR (
5 downto 0);
75 din3 :
IN STD_LOGIC_VECTOR (
5 downto 0);
76 def :
IN STD_LOGIC_VECTOR (
5 downto 0);
77 sel :
IN STD_LOGIC_VECTOR (
1 downto 0);
78 dout :
OUT STD_LOGIC_VECTOR (
5 downto 0) );
100 din0 => ap_const_lv6_2D,
101 din1 => ap_const_lv6_33,
102 din2 => ap_const_lv6_2E,
103 din3 => ap_const_lv6_23,
104 def => agg_result_fu_130_p9,
105 sel => agg_result_fu_130_p10,
106 dout => agg_result_fu_130_p11
);
111 activation_59_fu_80_p2 <= (comparison_fu_62_p2 xor ap_const_lv1_1);
112 activation_62_fu_92_p2 <= (comparison_31_fu_74_p2 and activation_59_fu_80_p2);
113 activation_fu_86_p2 <= (comparison_fu_62_p2 and comparison_30_fu_68_p2);
114 agg_result_fu_130_p10 <=
115 select_ln170_fu_114_p3 when (or_ln170_fu_108_p2(0) = '1') else
117 agg_result_fu_130_p9 <= "XXXXXX";
118 ap_ready <= ap_const_logic_1;
119 ap_return <= agg_result_fu_130_p11;
120 comparison_30_fu_68_p2 <= "1" when (unsigned(x_0_val) < unsigned(ap_const_lv16_342)) else "0";
121 comparison_31_fu_74_p2 <= "1" when (unsigned(x_5_val) < unsigned(ap_const_lv16_41)) else "0";
122 comparison_fu_62_p2 <= "1" when (unsigned(x_9_val) < unsigned(ap_const_lv16_17)) else "0";
123 or_ln170_fu_108_p2 <= (comparison_fu_62_p2 or activation_62_fu_92_p2);
124 select_ln170_fu_114_p3 <=
125 zext_ln170_fu_104_p1 when (comparison_fu_62_p2(0) = '1') else
127 xor_ln170_fu_98_p2 <= (ap_const_lv1_1 xor activation_fu_86_p2);
128 zext_ln170_fu_104_p1 <= std_logic_vector(IEEE.numeric_std.resize(unsigned(xor_ln170_fu_98_p2),2));