Курсовая работа: Цифровой фильтр высокой частоты
include "mult_c.inc";
PARAMETERS
(
wx = 8, --разрядностьшины xn
wy = 16, --разрядностьшины yn
wc1 = 5, -- разрядность коэффициентов b
wc2 = 7, -- разрядность коэффициентов a
rs = 6, --расширение коэффициента b
ws = 23, --разрядность шины sum
wp = 23, --разрядность шины result
b1 = 8, --коэффициент b1
b2 = B"10010", --коэффициент b2
b3 = 14, --коэффициент b3
b4 = B"11000", --коэффициент b4
a2 = B"1000101", --коэффициент a2
a3 = B"1000111", --коэффициент a3
a4 = B"1101110", --коэффициент a4
wm = 6 --сдвиг
);
subdesign filter
(
vxod[wx-1..0], clk : input;
ce : input=vcc;
reset : input=gnd;
vixod[wy-1..0] : output;
)
variable
sec_up : mult_a1 with (widthx = wx, widthc = wc1+rs, widths = ws, widthp = wp, bn= b1*(2^rs));
sec_mid1 : mult_b with (widthx = wx, widthy = wy, widthc1 = wc1+rs, widthc2=wc2, widthp = wp, an = a2, bn = b2*(2^rs));