2 use ieee.std_logic_1164.all;
3 use ieee.numeric_std.all;
11 a : in signed(7 downto 0);
12 b : in signed(7 downto 0);
14 const : out signed(7 downto 0);
15 absolute1 : out unsigned(7 downto 0);
16 absolute2 : out unsigned(7 downto 0);
17 sum : out signed(8 downto 0);
18 diff : out signed(8 downto 0);
19 inv_diff : out signed(8 downto 0);
20 quarter : out signed(7 downto 0);
22 int_sum : out signed(8 downto 0);
23 int_diff : out signed(8 downto 0);
25 inv_int_sum : out signed(8 downto 0);
26 inv_int_diff : out signed(8 downto 0);
28 sl_sum : out signed(8 downto 0);
29 sl_diff : out signed(8 downto 0);
31 inv_sl_sum : out signed(8 downto 0);
32 inv_sl_diff : out signed(8 downto 0);
44 int_neq : out boolean;
48 inv_int_lt : out boolean;
49 inv_int_le : out boolean;
50 inv_int_eq : out boolean;
51 inv_int_neq : out boolean;
52 inv_int_ge : out boolean;
53 inv_int_gt : out boolean
57 architecture a of ent is
58 signal ra, rb : signed(8 downto 0);
63 const <= to_signed(INT, const'length);
64 absolute1 <= to_unsigned(abs(INT), absolute1'length);
65 absolute2 <= unsigned(abs(a));
74 inv_int_sum <= INT + ra;
75 inv_int_diff <= INT - ra;
80 inv_sl_sum <= SL + ra;
81 inv_sl_diff <= SL - ra;
97 inv_int_lt <= INT < b;
98 inv_int_le <= INT <= b;
99 inv_int_eq <= INT = b;
100 inv_int_neq <= INT /= b;
101 inv_int_ge <= INT >= b;
102 inv_int_gt <= INT > b;