- •Предисловие
- •1. Структура проекта на ahdl
- •Оператор options
- •Оператор assert
- •Раздел variable используется для описания и/или генерации переменных, используемых в разделе Logic.
- •Раздел Variable может также содержать операторы If Generate, которые могут быть использованы для генерирования объектов, узлов, регистров, конечных автоматов, и псевдоимен конечных автоматов.
- •2. Элементы языка ahdl
- •2.1. Зарезервированные слова и идентификаторы
- •2.2. Символы
- •2.3. Строковые и символьные имена
- •2.4. Числа
- •2.5. Арифметические и логические выражения
- •2.6. Встроенные оценочные функции
- •2.7. Шины (группы), диапазоны и поддиапазоны шин
- •3. Примитивы и мегафункции
- •3.1. Обращение к примитивам и мегафункциям
- •1. Непосредственное обращение
- •2. Использование элемента как переменной
- •3.2. Примитивы
- •Примитивы триггеров
- •3.3. Библиотека параметризуемых функций (lpm)
- •1. Пример использования lpm_and, _or, _xor, _inv функций
- •2. Пример использования функции lpm_decode
- •3. Пример использования функций lpm_mux, busmux, mux
- •Пример использования функций lpm_counter, _latch, _ff,
- •5. Пример использования функций lpm_add_sub, _compare, _mult
- •6. Пример использования функции lpm_ram_dq
- •4. Описание логических схем
- •4.1. Операторы Оператор if then
- •Оператор case
- •Оператор defaults
- •Оператор if generate
- •Оператор for generate
- •Оператор truth table
- •4.2. Конечные автоматы
- •5. Основы проектирования плис с
- •Текстовой редактор
- •Литература
- •Прототипы примитивов буферов
- •Приложение 2 Прототипы примитивов триггеров
- •Приложение 3 Прототипы мегафункций
- •Содержание
- •Основы языка описания аппаратуры
- •Методические указания
- •630092, Г. Новосибирск, пр. К. Маркса, 20
Примитивы триггеров
DFF, DFFE – примитивы D-триггеров;
TFF, TFFE – примитивы T-триггеров;
JKFF, JKFFE – примитивы JK-триггеров;
SRFF, SRFFE– примитивы RS-триггеров;
LATCH – примитив «защелки».
В табл. 7 приведены описание выводов прототипов триггеров
Таблица 7
Выводы |
Описание |
d, t, j, k, s, r |
– информационные входы триггеров |
clk |
– вход тактового сигнала |
clrn |
– вход асинхронного сброса триггера |
prn |
– вход асинхронной установки триггера |
ena |
– вход разрешения работы триггера |
q |
– выход |
Прототипы примитивов триггеров приведены в прил. 2.
3.3. Библиотека параметризуемых функций (lpm)
В табл. 8 приведено краткое описание основных мегафункций
Таблица 8
Мегафункция |
Описание мегафункции |
lpm_constant |
Параметризированная функция константы |
lpm_abs |
Параметризированная функция абсолютного значения |
lpm_and |
Параметризированная функция элемента «И» |
lpm_or |
Параметризированная функция элемента «ИЛИ» |
окончание табл. 8
Мегафункция |
Описание мегафункции |
lpm_xor |
Параметризированная функция элемента «исключающее ИЛИ» |
lpm_inv |
Параметризированная функция инвертора |
lpm_mux |
Параметризированная функция мультиплексора |
busmux |
Параметризированная функция шинного мультиплексора |
mux |
Параметризированная функция мультиплексора |
lpm_decode |
Параметризированная функция декодера |
lpm_clshift |
Параметризированная функция сдвигового регистра |
lpm_bustri |
Параметризированная функция трехстабильной шины |
lpm_compare |
Параметризированная функция компаратора |
lpm_add_sub |
Параметризированная функция устройства сложения/вычитания |
lpm_divide |
Параметризированная функция делителя |
lpm_mult |
Параметризированная функция умножителя |
lpm_latch |
Параметризированная функция регистра |
lpm_ff |
Параметризированная функция регистра |
lpm_shiftreg |
Параметризированная функция сдвигового регистра |
lpm_counter |
Параметризированная функция счетчика |
lpm_rom |
Параметризированная функция постоянного запоминающего устройства |
lpm_ram_dq |
Параметризированная функция оперативного запоминающего устройства с раздельными входной и выходной шинами данных |
lpm_ram_io |
Параметризированная функция оперативного запоминающего устройства |
csdpram |
Параметризированная функция двухпортового оперативного запоминающего устройства |
lpm_ram_dp |
Параметризированная функция двухпортового оперативного запоминающего устройства |
csfifo |
Параметризированная функция FIFO |
lpm_fifo |
Параметризированная функция FIFO |
lpm_fifo_dc |
Параметризированная функция FIFO с раздельными тактовыми сигналами записи и чтения |
ntsc |
Параметризированная функция генератора видеосигнала NTSC |
clklock |
Параметризированная функция ФАПЧ |
PLL |
Параметризированная функция ФАПЧ |
В прил. 3 приведены прототипы мегафункций.
В приведенных ниже примерах показано использование основных мегафункций в достаточно простом включении.