Адміністрація вирішила продати даний сайт. За детальною інформацією звертайтесь за адресою: rozrahu@gmail.com

Розробка цифрового нерекурсивного CIX (FIR) фільтра

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Не вказано

Інформація про роботу

Рік:
2024
Тип роботи:
Звіт до лабораторної роботи
Предмет:
Основи проектування цифрових засобів на ПЛІС

Частина тексту файла

Міністерство освіти та науки України Національний університет «Львівська політехніка» Звіт з лабораторної роботи №5 з дисципліни:«Основи проектування цифрових засобів на ПЛІС» на тему: «Розробка цифрового нерекурсивного CIX (FIR) фільтра» Львів-2017 Тема: Розробка цифрового нерекурсивного CIX (FIR) фільтра. Мета роботи: Розробити цифровий нерекурсивний СІХ (FIR) фільтр. Постановка задачі: розробити цифровий нерекурсивний СІХ (FIR) фільтр. Завдання: 5. 97, 97, 97, 106, 106. Оптимізація чисел Переведемо дані числа у двійкові: 10610 = 11010102 9710 = 11000012 В даному випадку нам не потрібно оптимізовувати числа. VHDL-реалізація першого перемножувача library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.NUMERIC_STD.ALL; entity kiv_mod1 is Port ( KIV_A : in STD_LOGIC_VECTOR (7 downto 0); KIV_out1 : out STD_LOGIC_VECTOR (15 downto 0)); end kiv_mod1; architecture Behavioral of kiv_mod1 is signal kiv_prod,kiv_p7,kiv_p6,kiv_p5,kiv_p4,kiv_p3,kiv_p2,kiv_p1,kiv_p0:unsigned (15 downto 0); begin kiv_p0 <="00000000" & unsigned (kiv_A) & ""; kiv_p5 <="000" & unsigned (kiv_A) & "00000"; kiv_p6 <="00" & unsigned (kiv_A) & "000000"; kiv_prod <= kiv_p0+kiv_p5 +kiv_p6; kiv_out1 <= std_logic_vector (kiv_prod); end Behavioral;   VHDL-реалізація другого перемножувача library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.NUMERIC_STD.ALL; entity kiv_mod2 is Port ( KIV_A : in STD_LOGIC_VECTOR (7 downto 0); KIV_out2 : out STD_LOGIC_VECTOR (15 downto 0)); end kiv_mod2; architecture Behavioral of kiv_mod2 is signal kiv_prod, kiv_p7,kiv_p6,kiv_p5,kiv_p4,kiv_p3,kiv_p2,kiv_p1,kiv_p0:unsigned (15 downto 0); begin kiv_p1 <="0000000" & unsigned (kiv_A) & "0"; kiv_p3 <="00000" & unsigned (kiv_A) & "000"; kiv_p5 <="000" & unsigned (kiv_A) & "00000"; kiv_p6 <="00" & unsigned (kiv_A) & "000000"; kiv_prod <= kiv_p1 +kiv_p3+kiv_p5 +kiv_p6; kiv_out2 <= std_logic_vector (kiv_prod); end Behavioral;   Реалізація схеми CIX фільтру у Xilinx / Рис. 1. Схема CIX фільтру з синхронізацією виводу результату опрацювання Результат синтезу схеми CIX фільту, розробленого на основі ipcore Створюємо CIX-фільтр: / Рис. 2. Створення CIX-фільтру на основі IPCore VHDL-код тестового стенду LIBRARY ieee; USE ieee.std_logic_1164.ALL; USE ieee.numeric_std.ALL; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; LIBRARY UNISIM; USE UNISIM.Vcomponents.ALL; ENTITY kiv_sh2_kiv_sh2_sch_tb IS END kiv_sh2_kiv_sh2_sch_tb; ARCHITECTURE behavioral OF kiv_sh2_kiv_sh2_sch_tb IS COMPONENT kiv_sh2 PORT( KIV_A : IN STD_LOGIC_VECTOR (7 DOWNTO 0); CLK : IN STD_LOGIC; CE : IN STD_LOGIC; CLR : IN STD_LOGIC; res_ip : OUT STD_LOGIC_VECTOR (16 DOWNTO 0); rfd : OUT STD_LOGIC; rdy : OUT STD_LOGIC; res : OUT STD_LOGIC_VECTOR (15 DOWNTO 0)); END COMPONENT; SIGNAL KIV_A : STD_LOGIC_VECTOR (7 DOWNTO 0) :=x"00"; SIGNAL CLK : STD_LOGIC :='0'; SIGNAL CE : STD_LOGIC :='1'; SIGNAL CLR : STD_LOGIC :='0'; SIGNAL res_ip : STD_LOGIC_VECTOR (16 DOWNTO 0); SIGNAL rfd : STD_LOGIC; SIGNAL rdy : STD_LOGIC; SIGNAL res : STD_LOGIC_VECTOR (15 DOWNTO 0); BEGIN UUT: kiv_sh2 PORT MAP( KIV_A => KIV_A, CLK => CLK, CE => CE, CLR => CLR, res_ip => res_ip, rfd => rfd, rdy => rdy, res => res ); clk_process : PROCESS BEGIN CLK <='0'; WAIT FOR 10 ns; CLK <= '1'; WAIT FOR 10 ns; END PROCESS; data_change_process : PROCESS VARIABLE I : INTEGER; BEGIN for i in 0 to 3 loop WAIT FOR 20 ns; kiv_A <= conv_std_logic_vector(conv_integer(kiv_A) + 1,8); end loop; kiv_a<="00000000"; for i in 0 to 4 loop wait for 20 ns; end loop; for i in 0 to 3 loop WAIT FOR 20 ns; kiv_A <= conv_std_logic_vector(conv_integer(kiv_A) + 2,8); end loop; kiv_a<="00000000"; for i in 0 to 4 loop wait for 20 ns; end loop; END PROCESS; -- *** Test Bench - User Defined Section *** tb : PROCESS BEGIN WAIT; -- wi...
Антиботан аватар за замовчуванням

22.03.2018 19:03

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини