
- •Мова опису апаратури ahdl
- •1. Елементи мови
- •1.1. Ключові слова й ідентифікатори
- •1.2. Символи
- •1.3. Імена
- •1.4. Групи
- •1.5. Числа
- •1.6. Вирази
- •1.6.1. Арифметичні вирази
- •1.6.2. Логічні вирази
- •1.7. Оператори
- •1.7.1. Логічні оператори
- •1.7.2. Арифметичні оператори
- •1.7.3. Оператори порівняння
- •1.8. Пріоритет виконання операцій
- •1.9. Примітиви
- •1.9.1. Примітиви буферів
- •1.9.2. Буфер ланцюгового переносу (carry)
- •1.9.3. Буфер каскадного нарощування логічної функції (cascade)
- •1.9.4. Буфер логічного розширювача (ехр)
- •1.9.5. Буфер глобального ланцюга поширення управляючого
- •1.9.6. Буфер розміщення логічного осередку (lcell),
- •1.9.7. Буфер виходу з відкритим колектором (opndrn)
- •1.9.8. Буфер розміщення логічного осередку (soft),
- •1.9.9. Буфер виходу з z станом (tri)
- •1.10. Примітиви тригерів
- •2. Структура текстового опису
- •2.1. Загальна структура
- •Include Statement.
- •2.2. Розділ оголошення операторів
- •2.2.1. Title Statement
- •2.2.2. Parameters Statement
- •2.2.3. Include Statement
- •2.2.4. Constant Statement
- •2.2.5. Define Statement
- •2.2.6. Function Prototype Statement
- •2.2.7. Options Statement
- •2.2.8. Assert Statement
- •2.3. Subdesign Section
- •2.4. Variable Section
- •2.5. Logic Section
- •3. Застосування конструкцій мови
- •3.1. Логічні рівняння
- •3.2. Змінні типу node
- •3.3. Іменовані оператори
- •3.4. Групи
- •3.4.1. Одновимірні й часові групи
- •3.4.2. Двовимірні групи
- •3.5. Таблиця істинності
- •3.6. Оператор if then
- •3.7. Оператор case
- •3.8. Базові значення логічних функцій
- •3.9. Константи
- •3.10. Оператор for generate
- •3.11. Параметри
- •3.12. Оператор if generate
- •3.13. Оператор assert
- •3.14. Примітиви
- •3.15. Прототип модуля
- •Часть 1. Основы языка ahdl. М. 2005.- 50 с.
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
УЖГОРОДСЬКИЙ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ
ІНЖЕНЕРНО-ТЕХНІЧНИЙ ФАКУЛЬТЕТ
КАФЕДРА « КОМП’ЮТЕРНИХ СИСТЕМ ТА МЕРЕЖ»
Мова опису апаратури ahdl
Методичні вказівки з курсу
Автоматизація проектування комп’ютерних систем
Частина 1
ОСНОВИ МОВИ AHDL
Ужгород 2008
Методичні вказівки до лабораторних робіт з курсу
«Автоматизація проектування комп’ютерних систем»
для студентів 4-го курсу інженерно-технічного факультету
спеціальність «Комп’ютерні системи та мережі»
Укладач: Король І.Ю., канд. фіз.-мат. наук, доцент
Рецензенти:
Відповідальний за випуск: Король І.Ю., канд. фіз.-мат. наук, доцент,
зав. кафедри комп’ютерних систем та мереж
Дані методичні вказівки розглянуто та схвалено на засіданні кафедри комп’ютерних систем та мереж, протокол № від 2008 р.
та методичної комісії інженерно-технічного факультету,
протокол № від 2008 р.
ВСТУП
Мова AlteraHDL (AHDL) - мова опису апаратури, створена фірмою Altera в 1983 році. До теперішнього часу, пройшовши довгий шлях розвитку, вона являє собою ефективний засіб для:
поведінкового й структурного опису проектованого пристрою;
документування проекту.
Система синтезу пакета MAX+plus II, у який мова AHDL інтегрована, забезпечує його архітектурну незалежність: текстовий опис може бути без переробки синтезовано на базі будь-якої НВІС (Над Великої Інтегральної Схеми) програмувальної логіки, включеної в пакет MAX+plus II.
На відміну від таких мов як VHDL і VerilogHDL, орієнтованих на опис і моделювання системи (наприклад: процессор-память-проектований пристрій), мова AHDL більш проста у вивченні й оптимізована по своїх можливостях для проектування окремої НВІС. Однак, незважаючи на свою відносну простоту, вона містить типовий для сучасних мов опису апаратури набір високорівневих конструкції.
Проект
Під терміном «проект» у рамках пакета MAX+plus II розуміють набір файлів, пов'язаних із проектованим модулем, у якому виділяються дві групи файлів:
логічні файли, що описують алгоритм роботи пристрою (Design Files);
допоміжні файли(Ancilary Files).
Проект може містити один логічний файл або кілька логічних файлів, що утворять ієрархічний опис проектованого модуля. При ієрархічному описі серед безлічі логічних файлів розрізняють:
файл верхнього рівня в ієрархії описів (Top-level Design File);
файли нижніх (одного або декількох) рівнів ієрархії (Low-level Design files).
У файлі верхнього рівня задається архітектура модуля, визначається набір модулів, що входять до його складу як компоненти, і їхній взаємозв'язок. Опис цих модулів знаходиться в логічних файлах більш низького рівня ієрархії. У їхній склад, у свою чергу, у вигляді компонентів також можуть входити модулі, описи яких наведені в логічних файлах ще більш низького рівня ієрархії, і т.д.
Ім'я проекту повинно збігатися з ім'ям модуля верхнього рівня в ієрархії описів, а отже, і ім'ям логічного файлу, у якому зберігається його опис. Імена модулів нижніх рівнів ієрархії, у свою чергу, повинні збігатися з іменами файлів, у яких вони описані.
Логічний файл - це файл одного з наступних типів:
Graphic Design File – графічний файл (стандартне розширення - gdf). Файл містить схему, створену в рамках пакета MAX+plus II;
AHDL Text Design File – текстовий файл (стандартне розширення - .tdf). Файл містить текстовий опис модуля мовою AlteraHDL;
Waveform Design File – хвильовий файл (стандартне розширення - .wdf). Файл містить часові діаграми вхідних і вихідних сигналів, створених в рамках пакета MAX+plus II;
VHDL Design File – текстовий файл (стандартне розширення - .vdf). Файл містить текстовий опис модуля мовою VHDL;
■ Verilog Design File – текстовий файл (стандартне розширення - .v).
Файл містить текстовий опис модуля мовою Verilog HDL;
■ Orcad Schematic Files – схемний файл (стандартне розширення –
.sch).Файл містить схему, створену в рамках пакета ORCAD;
EDIF Input Files (стандартне розширення - . edf). Файл містить опис у форматі EDIF 200 або 300;
Xilinx Netlist Format File (стандартне розширення - . xnf). Файл містить опис модуля, отриманого в рамках пакета фірми Xilinx.
Допоміжні файли зберігають додаткову інформацію про проект. Їхні імена збігаються з ім'ям проекту.