8 use IEEE.std_logic_1164.
all;
9 use IEEE.numeric_std.
all;
13 ap_ready : OUT STD_LOGIC;
14 x_5_val : IN STD_LOGIC_VECTOR (15 downto 0);
15 x_9_val : IN STD_LOGIC_VECTOR (15 downto 0);
16 ap_return : OUT STD_LOGIC_VECTOR (5 downto 0) );
21 constant ap_const_logic_1 : STD_LOGIC := '1';
22 constant ap_const_boolean_1 : BOOLEAN := true;
23 constant ap_const_lv32_5 : STD_LOGIC_VECTOR (31 downto 0) := "00000000000000000000000000000101";
24 constant ap_const_lv32_F : STD_LOGIC_VECTOR (31 downto 0) := "00000000000000000000000000001111";
25 constant ap_const_lv11_0 : STD_LOGIC_VECTOR (10 downto 0) := "00000000000";
26 constant ap_const_lv16_15 : STD_LOGIC_VECTOR (15 downto 0) := "0000000000010101";
27 constant ap_const_lv1_1 : STD_LOGIC_VECTOR (0 downto 0) := "1";
28 constant ap_const_lv16_E : STD_LOGIC_VECTOR (15 downto 0) := "0000000000001110";
29 constant ap_const_lv2_2 : STD_LOGIC_VECTOR (1 downto 0) := "10";
30 constant ap_const_lv2_3 : STD_LOGIC_VECTOR (1 downto 0) := "11";
31 constant ap_const_lv6_2D : STD_LOGIC_VECTOR (5 downto 0) := "101101";
32 constant ap_const_lv6_32 : STD_LOGIC_VECTOR (5 downto 0) := "110010";
33 constant ap_const_lv6_28 : STD_LOGIC_VECTOR (5 downto 0) := "101000";
34 constant ap_const_logic_0 : STD_LOGIC := '0';
36 attribute shreg_extract : string;
37 signal tmp_fu_58_p4 : STD_LOGIC_VECTOR (10 downto 0);
38 signal comparison_fu_68_p2 : STD_LOGIC_VECTOR (0 downto 0);
39 signal comparison_50_fu_74_p2 : STD_LOGIC_VECTOR (0 downto 0);
40 signal activation_99_fu_80_p2 : STD_LOGIC_VECTOR (0 downto 0);
41 signal icmp_ln170_fu_92_p2 : STD_LOGIC_VECTOR (0 downto 0);
42 signal activation_fu_86_p2 : STD_LOGIC_VECTOR (0 downto 0);
43 signal zext_ln170_fu_98_p1 : STD_LOGIC_VECTOR (1 downto 0);
44 signal or_ln170_fu_102_p2 : STD_LOGIC_VECTOR (0 downto 0);
45 signal select_ln170_fu_108_p3 : STD_LOGIC_VECTOR (1 downto 0);
46 signal agg_result_fu_124_p9 : STD_LOGIC_VECTOR (5 downto 0);
47 signal agg_result_fu_124_p10 : STD_LOGIC_VECTOR (1 downto 0);
48 signal agg_result_fu_124_p11 : STD_LOGIC_VECTOR (5 downto 0);
49 signal agg_result_fu_124_p1 : STD_LOGIC_VECTOR (1 downto 0);
50 signal agg_result_fu_124_p3 : STD_LOGIC_VECTOR (1 downto 0);
51 signal agg_result_fu_124_p5 : STD_LOGIC_VECTOR (1 downto 0);
52 signal agg_result_fu_124_p7 : STD_LOGIC_VECTOR (1 downto 0);
53 signal ap_ce_reg : STD_LOGIC;
59 CASE0 :
STD_LOGIC_VECTOR (
1 downto 0);
61 CASE1 :
STD_LOGIC_VECTOR (
1 downto 0);
63 CASE2 :
STD_LOGIC_VECTOR (
1 downto 0);
65 CASE3 :
STD_LOGIC_VECTOR (
1 downto 0);
69 dout_WIDTH :
INTEGER );
71 din0 :
IN STD_LOGIC_VECTOR (
5 downto 0);
72 din1 :
IN STD_LOGIC_VECTOR (
5 downto 0);
73 din2 :
IN STD_LOGIC_VECTOR (
5 downto 0);
74 din3 :
IN STD_LOGIC_VECTOR (
5 downto 0);
75 def :
IN STD_LOGIC_VECTOR (
5 downto 0);
76 sel :
IN STD_LOGIC_VECTOR (
1 downto 0);
77 dout :
OUT STD_LOGIC_VECTOR (
5 downto 0) );
99 din0 => ap_const_lv6_2D,
100 din1 => ap_const_lv6_32,
101 din2 => ap_const_lv6_2D,
102 din3 => ap_const_lv6_28,
103 def => agg_result_fu_124_p9,
104 sel => agg_result_fu_124_p10,
105 dout => agg_result_fu_124_p11
);
110 activation_99_fu_80_p2 <= (comparison_fu_68_p2 xor ap_const_lv1_1);
111 activation_fu_86_p2 <= (comparison_50_fu_74_p2 and activation_99_fu_80_p2);
112 agg_result_fu_124_p10 <=
113 select_ln170_fu_108_p3 when (or_ln170_fu_102_p2(0) = '1') else
115 agg_result_fu_124_p9 <= "XXXXXX";
116 ap_ready <= ap_const_logic_1;
117 ap_return <= agg_result_fu_124_p11;
118 comparison_50_fu_74_p2 <= "1" when (unsigned(x_9_val) < unsigned(ap_const_lv16_15)) else "0";
119 comparison_fu_68_p2 <= "1" when (tmp_fu_58_p4 = ap_const_lv11_0) else "0";
120 icmp_ln170_fu_92_p2 <= "1" when (unsigned(x_5_val) > unsigned(ap_const_lv16_E)) else "0";
121 or_ln170_fu_102_p2 <= (comparison_fu_68_p2 or activation_fu_86_p2);
122 select_ln170_fu_108_p3 <=
123 zext_ln170_fu_98_p1 when (comparison_fu_68_p2(0) = '1') else
125 tmp_fu_58_p4 <= x_5_val(15 downto 5);
126 zext_ln170_fu_98_p1 <= std_logic_vector(IEEE.numeric_std.resize(unsigned(icmp_ln170_fu_92_p2),2));