[an error occurred while processing this directive]
Формирователь последовательности с управляемым периодом и длительностью на счетчике (+)
(«Телесистемы»: Конференция «Программируемые логические схемы и их применение»)

миниатюрный аудио-видеорекордер mAVR

Отправлено Question 05 июля 2004 г. 13:04

Необходимо сформировать последовательность с длительностью 5 мкс и периодом 10.3 мсек. Опорная частота 56 МГц.
Написал такую программу:

library IEEE;
use IEEE.STD_LOGIC_1164.all;
use IEEE.STD_LOGIC_ARITH.all;
use IEEE.std_logic_unsigned.all;

entity count_load is
port(
clk : in std_logic;
f : out std_logic);
end count_load;

architecture a of count_load is
signal cnt : std_logic_vector (20 downto 0);
begin
process (clk)
begin
if (clk'event and clk = '1') then
if cnt < 1048857 then
cnt <= cnt + 1;
else
cnt <= "001110100000100011000";
end if;
end if;
end process;
f <= cnt(20);
end a;

Она формирует все что необходимо, т.е. работает нормально. Но результаты компиляции не такие как ожидались, кушает очень много ресурсов: 36 LC. Хотя вроде бы должна кушать 21 ячейку.
Компилю на Quartus v3.0, м/с epm7064AE

Может что-то не так делаю :-(. Хелпните кто-ть.

Составить ответ  |||  Конференция  |||  Архив

Ответы


Отправка ответа

Имя (обязательно): 
Пароль: 
E-mail: 

Тема (обязательно):
Сообщение:

Ссылка на URL: 
Название ссылки: 

URL изображения: 


Перейти к списку ответов  |||  Конференция  |||  Архив  |||  Главная страница  |||  Содержание  |||  Без кадра

E-mail: info@telesys.ru