AFON//Радиотехник
AHDL · проект 22/50

ПЗУ-таблица

Постоянная таблица квадратов через TABLE

Задача

Реализовать ПЗУ, возвращающее квадрат числа по адресу 0…15.

Тип схемы и среда

Комбинационная схема. Оператор TABLE задаёт неизменяемое отображение адрес→данные.

Алгоритм работы

TABLE addr[] => data[] перечисляет 16 предвычисленных значений. Компилятор синтезирует это в комбинационную логику или таблицу переходов.

Код на AHDL

ahdl_22_pzu_tablitsa.tdf↓ скачать .tdf
% Проект 22: ПЗУ-таблица (квадраты 0..15) %
SUBDESIGN ahdl_22_pzu_tablitsa
(
    addr[3..0] : INPUT;
    data[7..0] : OUTPUT;
)
BEGIN
    TABLE
        addr[] => data[];
        0  => 0;
        1  => 1;
        2  => 4;
        3  => 9;
        4  => 16;
        5  => 25;
        6  => 36;
        7  => 49;
        8  => 64;
        9  => 81;
        10 => 100;
        11 => 121;
        12 => 144;
        13 => 169;
        14 => 196;
        15 => 225;
    END TABLE;
END;

Пояснения

TABLE удобен для таблиц функций (синус, гамма-коррекция, перекодировки). Для больших ПЗУ применяют LPM_ROM с файлом инициализации .mif.

Инструменты и справочники по теме

📦 help-user.ru — скупка и ремонт компьютерной техники. Продать ноутбук, ПК, комплектующие — help-user.ru.

Что дальше

Скачайте ahdl_22_pzu_tablitsa.tdf, создайте проект в MAX+PLUS II или Quartus, назначьте выводы под свою плату и скомпилируйте. Остальные 49 разработок — в разделе проектов на AHDL.