-- -- ------------------------------------------------------ -- Bibliothken einbinden library ieee; use ieee.std_logic_1164.all; use ieee.numeric_std.all; entity coefficients_register is port ( -- inputs clk_50MHz : in std_logic; -- 50 MHz Takt g1 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 1 g2 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 2 g3 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 3 g4 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 4 g5 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 5 g6 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 6 g7 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 7 g8 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 8 g9 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 9 g10 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 10 g11 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 11 g12 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 12 g13 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 13 g14 : in signed(7 downto 0); -- logarithmischer Verstärkungsfaktor Filter 14 -- outputs b0_1 : out signed(63 downto 0); -- Koeffizient b0 für Filter 1 des IIR-Filters b2_1 : out signed(63 downto 0); -- Koeffizient b2 für Filter 1 des IIR-Filters b0_2 : out signed(63 downto 0); -- Koeffizient b0 für Filter 2 des IIR-Filters b2_2 : out signed(63 downto 0); -- Koeffizient b2 für Filter 2 des IIR-Filters b0_3 : out signed(63 downto 0); -- Koeffizient b0 für Filter 3 des IIR-Filters b2_3 : out signed(63 downto 0); -- Koeffizient b2 für Filter 3 des IIR-Filters b0_4 : out signed(63 downto 0); -- Koeffizient b0 für Filter 4 des IIR-Filters b2_4 : out signed(63 downto 0); -- Koeffizient b2 für Filter 4 des IIR-Filters b0_5 : out signed(63 downto 0); -- Koeffizient b0 für Filter 5 des IIR-Filters b2_5 : out signed(63 downto 0); -- Koeffizient b2 für Filter 5 des IIR-Filters b0_6 : out signed(63 downto 0); -- Koeffizient b0 für Filter 6 des IIR-Filters b2_6 : out signed(63 downto 0); -- Koeffizient b2 für Filter 6 des IIR-Filters b0_7 : out signed(63 downto 0); -- Koeffizient b0 für Filter 7 des IIR-Filters b2_7 : out signed(63 downto 0); -- Koeffizient b2 für Filter 7 des IIR-Filters b0_8 : out signed(63 downto 0); -- Koeffizient b0 für Filter 8 des IIR-Filters b2_8 : out signed(63 downto 0); -- Koeffizient b2 für Filter 8 des IIR-Filters b0_9 : out signed(63 downto 0); -- Koeffizient b0 für Filter 9 des IIR-Filters b2_9 : out signed(63 downto 0); -- Koeffizient b2 für Filter 9 des IIR-Filters b0_10 : out signed(63 downto 0); -- Koeffizient b0 für Filter 0 des IIR-Filters b2_10 : out signed(63 downto 0); -- Koeffizient b2 für Filter 10 des IIR-Filters b0_11 : out signed(63 downto 0); -- Koeffizient b0 für Filter 11 des IIR-Filters b2_11 : out signed(63 downto 0); -- Koeffizient b2 für Filter 11 des IIR-Filters b0_12 : out signed(63 downto 0); -- Koeffizient b0 für Filter 12 des IIR-Filters b2_12 : out signed(63 downto 0); -- Koeffizient b2 für Filter 12 des IIR-Filters b0_13 : out signed(63 downto 0); -- Koeffizient b0 für Filter 13 des IIR-Filters b2_13 : out signed(63 downto 0); -- Koeffizient b2 für Filter 13 des IIR-Filters b0_14 : out signed(63 downto 0); -- Koeffizient b0 für Filter 14 des IIR-Filters b2_14 : out signed(63 downto 0) -- Koeffizient b2 für Filter 14 des IIR-Filters ); end coefficients_register; architecture behavior of coefficients_register is -- Zähler für workflow zur Berechnung der Koeffizienten signal counter : unsigned(7 downto 0) := x"00"; -- Alle weiteren Koeffizienten sind Bewrechnungsgrundlagen für -- die Koeffizienten b0 und b2 der jeweiligen Kaskaden. -- Die Koeffizienten werden wie folgt berechnet: -- b0 = c1 + v*c2 + c3 -- b2 = c1 - v*c2 + c3 -- Dabei ist v der lineare Verstärkungsfaktor der jeweiligen Kaskade