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

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

Отправлено Stewart Little 21 января 2005 г. 19:12
В ответ на: Как построить такую логическую функцию? отправлено Сергей Кириллов 21 января 2005 г. 18:13

ENTITY bit_counter IS
PORT (
input : IN std_logic_vector(7 downto 0); -- шина
output : OUT integer RANGE 0 to 15 -- результат
);

ARCHITECRURE deribas OF bit_counter IS

FUNCTION tetrade_lut (x : std_logic_vector (3 downto 0))
RETURN integer IS

VARIABLE z : integer RANGE 0 to 4;
TUPE LUT IS ARRAY (0 to 15) OF integer;
CONSTANT result : LUT := (0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4); -- таблица истинности для одной тетрады, реализованная на LUT.

BEGIN
z := conv_integer(x); -- преобразование "код (в смысле пол-байта) - номер в таблице"
return result(z); -- выборка значения из таблицы
END tetrade_lut;

SIGNAL t0, t1 : integer RANGE 0 to 4;

t0 <= tetrade_lut(input(3 downto 0));
t1 <= tetrade_lut(input(7 downto 4));

output <= t0 = t1;

END deribas;

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

Ответы


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

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

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

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

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


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

E-mail: info@telesys.ru