File: ../../Sources/A1_gradient_comp.vhd
0: ----------------------------------------------------------------------------------
1: -- Engineer: Vitor Mendes Camilo
2: --
3: -- Module Name: gradient_comp - Behavioral
4: --
5: -- Description: Code segment A.1
6: -- Local gradient computation for context determination
7: --
8: ----------------------------------------------------------------------------------
9:
10: library ieee;
11: use ieee.std_logic_1164.all;
12: use ieee.numeric_std.all;
13: use work.openjls_pkg.all;
14:
15: entity a1_gradient_comp is
16: generic (
17: BITNESS : natural range 8 to 16 := CO_BITNESS_STD
18: );
19: port (
20: iA : in unsigned (BITNESS - 1 downto 0);
21: iB : in unsigned (BITNESS - 1 downto 0);
22: iC : in unsigned (BITNESS - 1 downto 0);
23: iD : in unsigned (BITNESS - 1 downto 0);
24: oD1 : out signed (BITNESS downto 0);
25: oD2 : out signed (BITNESS downto 0);
26: oD3 : out signed (BITNESS downto 0)
27: );
28: end entity a1_gradient_comp;
29:
30: architecture behavioral of a1_gradient_comp is
31:
32: begin
33:
34: oD1 <= signed('0' & iD) - signed('0' & iB);
35: oD2 <= signed('0' & iB) - signed('0' & iC);
36: oD3 <= signed('0' & iC) - signed('0' & iA);
37:
38: end architecture behavioral;