- •Московский институт электронной техники Аппаратно-программный комплекс для изучения и исследования микропроцессоров и программируемой логики
- •Введение
- •Оборудование учебного рабочего места
- •Описание плат учебного стенда
- •Плата процессоров
- •Платы внешних устройств и индикации.
- •Процесс разработки
- •Конструкторские файлы, вспомогательные файлы и проекты.
- •Конструкторские файлы
- •Вспомогательные файлы
- •Меню 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. Проверка работы схемы с помощью Редактора Временных Диаграмм.
- •Интегрированная среда разработки и отладки.
- •Работа в интегрированной среде.
- •Команды меню.
- •Команды меню Файл
- •Команды меню Редактирование
- •Команды меню Показать
- •Команды меню Компиляция
- •Команды меню Отладка
- •Команды меню Окно
- •Команды меню Справка
- •Настройка параметров среды
- •Общие настройки
- •Настройка редактора
- •Настройка коммуникаций.
- •Компиляция
- •Окно ошибок.
- •Запуск программы на выполнение.
- •Сброс процессора.
- •Отладка
- •Ресурсы процессора.
- •Окно регистров
- •Окно памяти.
Средства управления базами данных Database Builder.
Database Builder использует файлы HIF для связи с файлами CNF, описывающими проект. Основываясь на информации файлов HIF, Database Builder копирует каждый файл CNF в одну базу данных проекта. Таким образом, база данных хранит информацию об электрических соединениях в проекте.
После создания базы данных как Database Builder проверяет логическую завершенность и согласованность проекта, проверяет связность границ и синтаксические ошибки (например, узел без источника или приемника). Большая часть ошибок может быть обнаружена и легко исправлена на этой стадии обработки. Каждый модуль компилятора позже обрабатывает и обновляет базу данных, построенную средством Database Builder.
После первой обработки проекта компилятором, все файлы дизайна скомпилированы. Можно использовать свойство компилятора, называемое «умная перекомпиляция» («Smart Recompile»), для того чтобы создать расширить базу данных, что помогает увеличить скорость последующей компиляции. Эта база данных позволяет Вам изменять назначение физических ресурсов устройства и перекомпилировать проект без перестройки базы данных и синтеза логики проекта заново. С помощью «всеобщей перекомпиляции» («total recompile») можно либо перекомпилировать только файлы, которые были изменены в после последней компиляции, либо полностью перекомпилировать проект.
Синтезатор Логики - Logic Synthesier
Синтезатор Логики применяет несколько алгоритмов для снижения количества используемых ресурсов и удаления лишней логики, для достижения наибольшей возможной эффективности для устройств данного семейства. Этот модуль компилятора также производит несколько приемов логического синтеза, для того чтобы добиться соответствия временным и другим требованиям, заданным пользователем. Кроме того, Синтезатор Логики производит поиск несоединенных узлов. Если он находит несоединенный узел, то удаляет примитивы, связанные с этим узлом.
Синтезатор Логики имеет большие возможности настройки, а также три готовых стиля синтеза.
Можно назначать времена и логические настройки, определять стили синтеза в любом приложении MAX+PLUSII. Также можно создать настройки для синтеза и временных требований по умолчанию для всего проекта, и добавлять необходимые индивидуальные настройки для каждой логической функции.
Разделитель – Partitioner.
Если проект настолько велик, что не умещается в одном устройстве, то Разделитель делит его на несколько устройств того же семейства, пытаясь разбить проект на возможно меньшее количество устройств. Проект разбивается по границам логических ячеек, а количество выводов, используемое для соединения между устройствами, минимизируется.
Разбиение может выполняться полностью автоматически, под частичным контролем пользователя, либо под полным его контролем. Назначение устройств и автоматический выбор устройств позволяет найти необходимый уровень контроля.
В то время как работают Разделитель и Разводчик (Fitter), можно прекратить компиляцию. В этом случае компилятор показывает информацию о текущем состоянии процесса разбиения и подгонки, включая сравнение требуемых и доступных ресурсов. Таким образом, Вы можете решить, стоит ли продолжать компиляцию далее.