
- •Предисловие
- •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
Раздел Variable может также содержать операторы If Generate, которые могут быть использованы для генерирования объектов, узлов, регистров, конечных автоматов, и псевдоимен конечных автоматов.
Раздел LOGIC определяет логическое функционирование проекта. может содержать следующие выражения и операторы:
-
булевские выражения.
-
управляющие булевские выражения.
-
оператор таблицы истинности
-
оператор Assert
-
оператор Case
-
оператор Defaults
-
оператор If Then
-
оператор If Generate
-
оператор For Generate
2. Элементы языка ahdl
2.1. Зарезервированные слова и идентификаторы
Зарезервированные ключевые слова используются для управления операторами AHDL, а также для предопределенных констант GND и VCC.
Зарезервированные ключевые слова отличаются от зарезервированных идентификаторов тем, что ключевые слова можно использовать как символьные имена при заключении их в одиночные кавычки ('), а зарезервированные идентификаторы – нет. Как те, так и другие можно свободно использовать в комментариях.
Список зарезервированных ключевых слов приведен в табл. 2, а зарезервированных идентификаторов – в табл. 3.
Таблица 2
AND |
DESIGN |
INPUT |
OR |
TITLE |
ASSERT |
DEVICE |
IS |
OTHERS |
TO |
BEGIN |
ELSE |
LOG2 |
OUTPUT |
TRI_STATE_NODE |
BIDIR |
ELSIF |
DIV |
PARAMETERS |
VARIABLE |
BITS |
END |
MACHINE |
REPORT |
VCC |
BURIED |
FOR |
MOD |
RETURNS |
WHEN |
CASE |
FUNCTION |
NAND |
SEGMENTS |
WITH |
CLIQUE |
GENERATE |
NODE |
SEVERITY |
XNOR |
CONNECTED_PINS |
GND |
NOR |
STATES |
XOR |
CONSTANT |
HELP_ID |
NOT |
SUBDESIGN |
|
DEFAULTS |
IF |
OF |
TABLE |
|
DEFINE |
INCLUDE |
OPTIONS |
THEN |
|
Таблица 3
CARRY |
JKFFE |
SRFFE |
CASCADE |
JKFF |
SRFF |
CEIL |
LATCH |
TFFE |
DFFE |
LCELL |
TFF |
DFF |
MCELL |
TRI |
EXP |
MEMORY |
USED |
FLOOR |
OPENDRN |
WIRE |
GLOBAL |
SOFT |
X |