
- •Московский институт электронной техники Аппаратно-программный комплекс для изучения и исследования микропроцессоров и программируемой логики
- •Введение
- •Оборудование учебного рабочего места
- •Описание плат учебного стенда
- •Плата процессоров
- •Платы внешних устройств и индикации.
- •Процесс разработки
- •Конструкторские файлы, вспомогательные файлы и проекты.
- •Конструкторские файлы
- •Вспомогательные файлы
- •Меню Help (Помощь)
- •Начало проектирования
- •Назначение ресурсов, устройств и имен.
- •Настройка устройства проекта.
- •Расположение узлов.
- •Анализ времен.
- •Язык описания Альтеры ahdl.
- •Язык vhdl
- •Язык Verilog hdl
- •Примитивы, мегафункции и макрофункции.
- •Примитивы.
- •Мегафункции.
- •Макрофункции старого стиля.
- •Иерархия проекта.
- •Обработка проекта
- •Входные файлы компилятора.
- •Процесс компиляции.
- •Запуск компиляции.
- •Модули компилятора и выходные файлы.
- •Средства управления базами данных Database Builder.
- •Синтезатор Логики - Logic Synthesier
- •Разделитель – Partitioner.
- •Разводчик - Fitter.
- •Функциональный экстрактор snf
- •Экстрактор времен snf
- •Экстрактор связей snf.
- •Обработчик списков соединений edif (Edif Netlist Writer)
- •Обработчик списков соединений Verilog (Verilog Netlist Writer)
- •Обработчик списков соединений vhdl (vhdl Netlist Writer)
- •Ассемблер (Assembler).
- •Утилита Design Doctor.
- •Обнаружение ошибок и нахождение места их возникновения.
- •Анализ проекта.
- •Функциональное моделирование (симуляция).
- •Временная симуляция.
- •Связанная многопроектная симуляция.
- •Особенности симулятора.
- •Программирование устройства.
- •Шаг 2. Создание графического файла схемы (Graphic Design File).
- •Шаг 3. Компиляция проекта.
- •Шаг 4. Подготовка файла симуляции проекта.
- •Шаг 5. Симуляция.
- •Шаг 6. Анализ результатов работы Симулятора.
- •Шаг 7. Программирование устройства Altera.
- •Шаг 2. Проверка работоспособности собранной схемы триггера с помощью Редактора Временных Диаграмм.
- •Шаг 3. Сохранение элемента как примитив (символ).
- •Шаг 4. Сборка схемы трехразрядного счетчика.
- •Шаг 5. Проверка работы схемы с помощью Редактора Временных Диаграмм.
- •Интегрированная среда разработки и отладки.
- •Работа в интегрированной среде.
- •Команды меню.
- •Команды меню Файл
- •Команды меню Редактирование
- •Команды меню Показать
- •Команды меню Компиляция
- •Команды меню Отладка
- •Команды меню Окно
- •Команды меню Справка
- •Настройка параметров среды
- •Общие настройки
- •Настройка редактора
- •Настройка коммуникаций.
- •Компиляция
- •Окно ошибок.
- •Запуск программы на выполнение.
- •Сброс процессора.
- •Отладка
- •Ресурсы процессора.
- •Окно регистров
- •Окно памяти.
Назначение ресурсов, устройств и имен.
Ресурс - это часть устройства ПЛИС, такая как вывод корпуса или логическая ячейка, выполняющая особенную, заданную пользователем, функцию. Можно назначать необходимую логику ресурсам устройства, чтобы быть уверенным, что компилятор MAX+PLUSII обрабатывает проект точно так, как Вы хотите. Доступны следующие типы назначений:
Назначение по графу. Определяет, какие функции должны оставаться вместе в одном блоке. Группирование логических функций с помощью графа позволяет удостовериться в том, что они выполняются на нужном блоке LAB, EAB, нужном ряду или устройстве.
Назначение по чипу. Определяет, какие логические функции должны быть выполнены в каждой ПЛИС. Используется когда проект разбивается на несколько устройств.
Назначение выводов корпуса. Назначает вход или выход логической функции на определенный вывод корпуса или ряд и колонку внутри микросхемы.
Назначение положения. Назначает логической функции определенное местоположение внутри микросхемы, например логическую ячейку, ячейку ввода/вывода, блок LAB, EAB, ряд или колонку.
Назначение имен. Назначает легкое для запоминания, уникальное имя для входа или выхода логической функции.
Назначение соединенных выводов микросхемы. Определяет, как два или более выводов соединены на внешней плате. Эта информация также полезна для временной симуляции (моделирования).
Назначение локальных путей. Назначает нагрузочную способность по выходу узла логической ячейке в том же самом блоке LAB, что и узел, или в соседнем блоке LAB, используя локальные разделяемые межсоединения. Такое назначение также возможно между узлом, находящемся в блоке LAB, расположенном на периферии устройства и соответствующим ему выводом корпуса.
Назначение устройства. Определяет, какому устройству соответствует логика проекта. Можно назначать определенную ПЛИС и тип ее корпуса, степень быстродействия и операционную температуру. Можно также назначить автоматический выбор (AUTO) и позволить компилятору самому выбрать ПЛИС. Процесс автоматического выбора ПЛИС может контролироваться установкой семейства и количества ПЛИС необходимого семейства. Если проект оказывается слишком большим и не умещается в одной ПЛИС, то Можно также назначить тип и количество дополнительных устройств.
Назначение настроек синтеза логики. Управляет синтезом логики во время компиляции, используя стиль синтеза и/или индивидуальные настройки. Фирма Altera предоставляет три стиля синтеза, каждый из которых представляет собой набор логических настроек, объединенных под одним именем стиля. Можно использовать эти стили или создать свой собственный.
Назначение времен. Управляет синтезом логики проекта для достижения необходимых временных требований.
Настройка устройства проекта.
Можно назначать настройки устройства, которые компилятор будет использовать для всех ПЛИС при обработке проекта. Можно также определить количество выводов корпуса, которые должны остаться свободными, настроить конфигурацию устройств.
Настройка параметров проекта.
Можно определить имена и глобальные настройки, которые компилятор будет использовать для параметров и всех параметризованных функций в вашем проекте.
Временные параметры проекта.
Можно вводить временные требования к проекту, определяя общие требования.
Синтез логики проекта.
При синтезе проекта можно выбрать глобальные настройки, которые компилятор будет использовать. Можно задать стиль синтеза, используемый по умолчанию, рекомендации по оптимизации скорости или доступного места. Также можно указать компилятору использовать стандартный или многоуровневый синтез, использовать автоматическую упаковку регистров, автоматически исполнять логику на ячейках быстрого ввода/вывода (fast input/output logic cells), или блоке EAB.
Общие функции редакторов
Многие функции разделяются всеми пятью редакторами MAX+PLUSII или тремя конструкторскими редакторами (Текстовым, Графическим и Редактором Временных Диаграмм).
Следующие функции являются общими для всех редакторов MAX+PLUSII:
Генерация файлов примитивов и включений.
Можно автоматически генерировать и обновлять примитивы для любого из конструкторских файлов, поддерживаемых MAX+PLUSII , используя команду Create Default Symbol из меню File. Файл примитива имеет такое же имя, как и конструкторский файл, но с расширением .sym. Он может быть объединен с любым файлом схем (.sch), который находится выше его в иерархии проекта.
Команда Create Default Include File из меню File создает файл включений с именем, совпадающим с конструкторским файлом, но с расширением .inc.