Главная страница

Лешуков В.В., Скакунов В.Н. (сост.) Проектирование микропроцессорных систем. Лешуков В.В., Скакунов В.Н. (сост.) Проектирование микропроцессо. Методические указания к лабораторной работе по курсу "Проектирование микропроцессорных систем" Часть v волгоград 2000


Скачать 0.51 Mb.
НазваниеМетодические указания к лабораторной работе по курсу "Проектирование микропроцессорных систем" Часть v волгоград 2000
АнкорЛешуков В.В., Скакунов В.Н. (сост.) Проектирование микропроцессорных систем
Дата09.02.2022
Размер0.51 Mb.
Формат файлаdoc
Имя файлаЛешуков В.В., Скакунов В.Н. (сост.) Проектирование микропроцессо.doc
ТипМетодические указания
#355932
страница1 из 4
  1   2   3   4

Министерство образования Российской Федерации
Волгоградский государственный технический университет


КАФЕДРА "ЭВМ И СИСТЕМ"

Методические указания

к лабораторной работе по курсу

"Проектирование микропроцессорных систем"


Часть V

Волгоград 2000


УДК 681.31

Система проектирования цифровых устройств на ПЛИС : Методические указания к лабораторной работе по курсу «Проектирование микропроцессорных устройств». Часть V
/Сост. В.В. Лешуков, В.Н. Скакунов; Волгоград.гос.техн.ун-т. -Волгоград, 2000: 32 с.

Содержит сведения о системе автоматизированного проектирования цифровых устройств MAX+plusll, условия применения и назначения системы, описание основных функций и примеры проектирования цифровых устройств.

Предназначены для студентов, обучающихся по направлению 5528 «Информатика и вычиислительная техника» и специальности 2201 «Вычислительные машины, комплексы, системы и сети» всех форм обучения.
Ил.З. Библиогр.: 6 назв.
Печатается по решению редакционно-издательского совета Волгоградского государственного технического университета


Рецензент канд.техн.наук, доцент А.Н. Шилин
© Волгоградский государственный технический университет, 2000

СИСТЕМА ПРОЕКТИРОВАНИЯ ЦИФРОВЫХ УСТРОЙСТВ НА ПЛИС

Цель работы: изучение системы автоматизированного проекти­рования цифровых устройств на программируемых логических ин­тегральных схемах (ПЛИС) MAX+PLUS II.
1.НАЗНАЧЕНИЕ И УСЛОВИЯ ПРИМЕНЕНИЯ СИСТЕМЫ
1.1. Назначение системы

Система проектирования и программирования ПЛИС MAX+PLUS II' (САПР MAX+PLUS II версия 7.1 от 02.12.96) предназначена для синтеза и изготовления цифровых логических устройств в базисе ПЛИС.

САПР позволяет проектировать и изготавливать специализированные ИС на основе одной или нескольких ПЛИС.

САПР может работать в следующих операционных системах: Windows 3.1 и Windows for Workgroups 3.11, Windows 95, Windows NT 3.51 или 4.0

Обмен данными с программатором ПЛИС может осуществляться через после­довательный либо параллельный порт. Тип порта а также тип программатора оп­ределяется типом программируемой ПЛИС. (Подробнее см. помощь MAX+PLUS И, раздел "Devices & Adapters"(Устройства и Адаптеры)).
1.2. Структурный базис системы

Структурный базис MAX+PLUS II составляют следующие семейства ПЛИС:

Classic (ЕР220, EP320I, EP600I. ЕР610, EP6I01, EP900I..EP910, EP910I, ЕР18001, ЕР1810);

МАХ 5000 (ЕРМ5016, ЕРМ5032. ЕРМ5064, ЕРМ5128, ЕРМ5128А, ЕРМ513О, ЕРМ5192, EPS464);

МАХ 7000 (ЕРМ7032, EPM7032S, EPM7032V, ЕРМ7064, EPM7064S, ЕРМ7096, ЕРМ7128Е, EPM7128S, ЕРМ7160Е, ЕРМ7192Е, EPM7192S, ЕРМ7256Е, EPM7256S);

МАХ 9000 (ЕРМ9560, ЕРМ9480, ЕРМ9400, ЕРМ9320);

FLEX 8000 (EPF8282A, EPF8282V, EPF8452A, EPF8636A, EPF8820A, EPF81188A, EPF81500A);

FLEX 10K (EPF10K100, EPF10K70, EPF10K50, EPF10K40, EPFI0K30, EPF10K20, EPF10K10);

FLASHlogic (EPX8160, EPX880, EPX780, EPX740);
2.ОПИСАНИЕ СИСТЕМЫ
2.1. Общий обзор САПР MAX+PLUS II

Система автоматизированного проектирования цифровых устройств на ПЛИС MAX+PLUS II предназначена для автоматизации процесса проектирования на этапах оптимизации схемы и логических функций устройства, размещения полу­ченной логики на ПЛИС, тестирования и отладки модели будущего устройства, программирования ПЛИС (с помощью программатора), тестирования готового устройства. За реализацию этих функций отвечают различные модули програм­мы.

Первоначальный ввод информации о проектируемом устройстве, а также дальнейшее ее редактирование может осуществляться с помощью Графического редактора (Graphic Editor - ввод принципиальной схемы), Символьного редакто­ра (Symbol Editor - ввод изображений отдельных логических элементов) или Текстового редактора (Text Editor - ввод логических функций на языках AHDL или VHDL).

Минимизацию и оптимизацию проекта, а также его предварительное распре­деление по модели кристалла ПЛИС выполняет Компилятор (Compiler). Он же генерирует файлы, необходимые для всех последующих этапов.

Тестирование правильности работы и определение некоторых временных ха­рактеристик можно осуществить с помощью Редактора входных и выходных воз­действий (Waveform Editor) и Имитатора (Simulator).

Более детальную информацию о временных характеристиках устройства мож­но получить с помощью Временного анализатора (Timing Analizer).

Модуль Редактора подложки (Floorplan Editor) предоставляет проектировщи­ку возможность просматривать и самому вносить изменения в распределение проекта по кристаллу ПЛИС, а также переназначать отдельные выводы чипа.

Для программирования и тестирования физического устройства (ПЛИС) пред­назначен Программатор (Programmer).

Общий контроль хода проектирования, а также перемещение по различным частям и этапам проекта осуществляется с помощью Иерархического дисплея (Hierarchy Display).

Для управления работой отдельных модулей и их совместного использования в ходе проектирования предназначено Главное окно или Менеджер проекта (MAX+PLUS II Manager).
2.1. Главное окно

После запуска программы и загрузки основного модуля в оперативную память на экране появляется Главное окно - MAX+PLUS II Manager. В левом верхнем уг­лу, помимо названия программы отображается текущий директорий и путь до не­го. Чуть ниже расположена панель Главного меню, в котором при запуске про­граммы (в ходе работы это меню может расширяться) присутствуют следующие пункты:

MAX+PLUSII. Этот пункт содержит в качестве подпунктов основные инструментальные средства программы MAX+PLUS II, каждое из которых является отдельным этапом проектирования или программирования логических устройств на ПЛИС. Ниже они будут рассмотрены более подробно.

File. В этом пункте расположены основные средства для работы с проектом и отдельными файлами, позволяющие открыть ('Open'), создать ('New') или удалить ('Delete file') файл одного из типов, используемых в данной САПР. Под­пункт 'Project', в свою очередь, подразделяется на подпункты, с помощью кото­рых можно назвать или переименовать текущий проект ('Name'), назвать проект по имени отдельного файла, открытого и активного в данный момент ('Set Project to Current File'), сохранить проект одновременно с выполнением некото­рых действий (подпункты типа 'Save & ...'), а также сохранить проекг в его теку­щем состоянии в отдельном директории ('Archive'). В ходе работы над проектом при открытии отдельных файлов список подпунктов расширяется. Появляется, например, возможность сохранить текущий открытый файл ('Save' или 'Save as...'), закрыть его ('Close'), вывести на печать ('Print'), а также выполнить дру­гие контекстно-зависимые операции над открытым файлом. Набор операций за­висит от типа открытого файла. Здесь же расположен подпункт 'Exit MAX+PLUS II', выбрав который можно завершить работу с программой.

Assign. Пункт, содержащий различные настройки и начальные установки, как для отдельных элементов проекта (выводы, элементы...), так и для всего проекта в целом. Рассмотрим некоторые из них.

Подпункт 'Device...' позволяет выбрать семейство ПЛИС и конкретное на­именование ИС для Вашего проекта.

Подпункт 'Timing Requirements...' задает максимально допустимые за­держки распространения сигналов между отдельными узлами и выводами схемы. Если MAX+PLUS II при размещении проекта на ПЛИС не сможет обеспечить за­данных Вами временных ограничений, то при компиляции будут выданы соот­ветствующие предупреждения.

Подпункт 'Connected Pins...' позволяет соединить внутри ПЛИС несколько внешних выводов.

Подпункт 'Global Project Device Options...' позволяет установить Бит Защиты для ПЛИС, предупреждающий несанкционированную дешифрацию логики по структуре готового кристалла. Также в этом пункте задается процент зарезерви­рованных выводов и связей для будущего расширения логической схемы в рам­ках данного чипа.

Подпункт 'Global Project Timing Requirements...' задает максимально до­пустимые задержки распространения сигналов между узлами и выводами для всей схемы в целом.

Подпункт 'Global Project Logic Synthesis...' позволяет установить общие для проекта настройки логического синтеза. В частности, выбирается общая стра­тегия оптимизации по скорости работы ИС, либо по максимальной компактности размещения, либо один из промежуточных вариантов.

Подпункты 'Ignore Project Assignments...' и 'Clear Project Assignments...' позволяют соответственно отключать или совсем сбрасывать глобальные на­стройки, список которых приводится в диалоговых окнах этих подпунктов.

Options. В этом пункте содержатся основные настройки самой программы, ее интерфейса:

Подпункт 'User Libraries...' задает пути до пользовательских библиотек, ко­торые могут содержать символьные файлы (файлы элементов и примитивов), файлы проекта всех поддерживаемых программой форматов, файлы макро- и мегафункций, а также файлы библиотек языка AHDL.

Подпункт 'Preferences...' ('Предпочтения...') позволяет установить или сбросить некоторые настройки программы. В частности, проставив галочки на­против пунктов 'Show Toolbar' и 'Show Status Bar', можно визуализировать па­нель инструментов и строку состояния, если до этого эти опции были отменены. Заметим, что программа не оснащена всплывающей подсказкой по кнопкам пане­ли инструментов, но эта подсказка появляется в строке состояния, поэтому реко­мендуется, по крайней мере, на начальном этапе работы с программой включить оба этих подпункта.

Help. Пункт меню 'Помощь' содержит достаточно обширную гипертекстовую справку по всем этапам работы с программой (на английском языке). Помимо этого, контекстно-зависимая справка по текущему этапу работы появляется при нажатии клавиши F1.

Последовательно рассмотрим работу основных инструментальных средств САПР MAX+PLUS II на примере. В качестве исходных данных возьмем логиче­скую схему четырехразрядного двоичного суммирующего счетчика на Т-триггерах.
2.2. Графический редактор

Для ввода схемы проекта и ее редактирования используется Графический ре­дактор (пункт меню 'MAX+PLUS II\Graphic Editor'). Результатом его работы является файл с расширением GDF (Graphic Design File - графический файл про­екта). Введем в рабочее поле Графического редактора схему двоичного счетчика. Для этого необходимо щелчком правой клавиши мыши по области рабочего поля, незанятой уже введенными элементами (в нашем примере такие пока отсутству­ют), вызвать всплывающее меню. В появившемся меню выбираем пункт 'Enter Symbol' (ввод символа). Появляется диалоговое окно ввода символа. В поле 'Symbol Libraries' (библиотеки символов) выбираем директорий, содержащий нужную библиотеку символов. В качестве символа может выступать:

примитив ('primitive') - отдельный элемент логических электрических схем (например логический вход или выход схемы, триггер, элемент, осуществляющий простую логическую функцию). В директории '...maxplus2\max2lib\prim' содер­жится стандартная библиотека примитивов, поставляемая вместе с программой MAX+PLUS II,

макрофункция ('macrofunction') - стандартный высокоуровневый блок, реа­лизующий какую-либо логическую функцию. В директории '...maxplus2\max21ib\mf' содержится стандартная библиотека макрофункций, по­ставляемая вместе с программой MAX+PLUS II.

мегафункция ('megafunction') - сложный стандартный высокоуровневый блок, реализующий какую-либо логическую функцию. Мегафункция является более поздней разработкой фирмы Altera, чем макрофункция, и представляет собой ее развитие. В директории '...maxplus2\max2Iib\mega_lpm' содержится стандартная библиотека мегафункций, поставляемая вместе с MAX+PLUS II.

Заметим, что помимо стандартных библиотек пользователь может использо­вать другие библиотеки, созданные самостоятельно или взятые из других источ­ников. Подключить новую библиотеку можно с помощью пункта меню 'Орtions\User Libraries...', указав путь до директория с библиотекой.

Для рассматриваемого примера потребуется символ Т-тригтера, который есть в библиотеке стандартных примитивов с названием 'tff'. Двойным щелчком мы­ши но каталогу с нужной библиотекой в списке имеющихся выберем библиотеку примитивов '...maxplus2\max2lib\prim'. В списке 'Symbol Files' появится список имен имеющихся примитивов. Выберем примитив с именем 'tff' двойным шел­ком мыши. В рабочем поле Графического редактора появится изображение вы­бранного примитива (аналогичный результат можно получить, выбрав пункт ме­ню 'Symbol\Enter Symbol', который появляется в Главном меню при открытом окне Графического редактора). Правым щелчком мыши по изображению триггера вызовем всплывающее меню. Выбрав команду 'Сору', скопируем символ в буфер обмена. Вызвав всплывающее меню правее изображения триггера, вставим на свободное место новое изображение триггера из буфера обмена командой 'Paste'. Таким образом, необходимо получить изображение четырех триггеров и распо­ложить их согласно рис. 1. Аналогичным образом получим три инвертора (при­митив 'not' из той же библиотеки примитивов) и разместим их согласно рис. 1.

Для построения счетчика потребуются также два вывода (ножки) ПЛИС в ка­честве входов и четыре в качестве выходов: Воспользуемся примитивами 'input' и 'output' соответственно из стандартной библиотеки примитивов. Расположите входы и выходы согласно рис. 1. Для назначения имен полученным выводам нужно щелчком правой кнопки мыши на надписи 'PIN_NAME' нужного вывода вызвать всплывающее меню и выбрать пункт 'Edit Pin Name'. Назовите входы 'CCount' и 'СЕn', а выходы - 'Q1', 'Q2', 'Q3' и 'Q4' (см. рис. 1.).

Чтобы провести соединительные линии (логические связи) между выводами примитивов, надо поместить указатель мыши на один из соединяемых выводов, нажать правую кнопку мыши и тянуть новую линию до нужного места или до места соединения с выводом другого примитива, после чего отпустить кнопку мыши. Форма линии (горизонтально-вертикальная, диагональная, арка) задается кнопками на левой инструментальной панели, тип линии можно выбрать в меню 'Options\Line Style', где толстая линия служит для обозначения шин, а все ос­тальные - для отдельных связей. Тип линии также может задаваться для уже су­ществующей линии выбором пункта 'Line Style' из всплывающего меню после щелчка правой кнопкой мыши на этой линии.

При соединении в одной точке трех тонких линий в месте соединения автома­тически ставится жирная точка, обозначающая их физическое соединение, при пересечении двух тонких линий точка по умолчанию не ставится. В любом месте тонкой линии (в том числе, в месте ее пересечения или соединения с другой линией) можно поставить или убрать точку, включив или выключив опцию 'Toggle Connection Dot' на левой инструментальной панели либо во всплывающем ме­ню при щелчке правой кнопкой мыши в нужном месте линии.

Также следует обратить внимание на опцию 'Растягиваемые связи', которая включается и выключается пунктом меню 'Options\Rubbcrbanding', либо двумя кнопками на левой инструментальной панели. Это свойство линий позволяет пе­ремещать отдельные примитивы друг относительно друга без разрыва уже суще­ствующих между ними связей.

Отметим еще несколько интересных пунктов всплывающего меню для отдель­ных линий.

'Enter Node/Bus Name' - пункт позволяет ввести имя линии или шины.

'Fined Node Source' - этот пункт меню позволяет найти источник сигнала для отдельной линии. Причем, если источников оказывается несколько, то выделяет­ся только самый верхний и правый на схеме, а остальные игнорируются.




'Fined Node Destination' - поиск приемника сигнала для отдельной линии. Также как и в предыдущем случае, выделяется самый верхний изображенный на схеме объект, подключенный к линии в качестве приемника сигнала.

Две последних операции помогают проектировщику правильно ввести слож­ную схему.

После того, как схема введена, необходимо сохранить полученный графиче­ский файл. MAX+PLUS II сохраняет файлы схем в формате GDF. Для этого нуж­но воспользоваться пунктами главного меню 'FiIe\Save' или 'File\Save As...'. При закрытии редактируемого файла система также предлагает произвести сохране­ние сделанных изменений. Сохраним файл под именем "exampl.gdf'. Таким же образом назовем и весь проект ('File\Project\Set Project to Current File').
2.3. Символьный редактор

Символьный редактор (меню 'MAX+PLUS II\Symbol Editor') предназначен для создания и редактирования символьных изображений отдельных примитивов, макро- и мегафункций, используемых для представления этих элементов в прин­ципиальной схеме. Результатом работы редактора является .sym файл.

На примере создания символа для проектируемого счетчика рассмотрим рабо­ту Символьного редактора. После запуска редактора в поле редактирования появ­ляется прямоугольник, изображенный голубой линией. Он ограничивает пло­щадь, занимаемую символом. Размеры прямоугольника изменяются мышью с курсором в виде стрелки методом 'перетаскивания' соответствующей боковой линии (задать вид курсора и тип операции можно с помощью левой панели инст­рументов, аналогичной панели Графического редактора). В самом начале работы в прямоугольнике присутствуют только название символа (по умолчанию -'SYM_NAME') и 'ключ' в виде кружка (цифра '0') в левом нижнем углу прямо­угольника, необходимый для правильной ориентации изображения. Местополо­жение названия и 'ключа' может быть изменено методом 'перетаскивания'. Само название редактируется способами, описанными в Графическом редакторе.

Одной из основных операций Символьного редактора является обозначение выводов элемента. Для этого необходимо дважды щелкнуть мышью (курсор в виде стрелки) на границе прямоугольника в месте предполагаемого размещения вывода. Появляется диалоговое окно 'Enter Pinstub' ('Введите параметры вы­вода'), содержащее следующие элементы:

Full Pinstub Name - строка, в которую вводится полное имя вывода, соответ­ствующее названию вывода элемента;

Visible Pinstub Name - строка, содержащая имя вывода, отображаемое на изо­бражении элемента (по умолчанию соответствует полному);

I/O Туре - раздел, содержащий три 'RadioButton' и отображающий один из трех возможных типов вывода:

Input Pin - входной сигнал;

Output Pin - выходной сигнал;

Bidirectional Pin - двунаправленный вывод;

Default Status - две 'Radiobutton', показывающие используется этот вывод или нет (соответственно 'Used' или 'Unused');

Show Visible Pinstub Name in Graphic Editor - этот пункт определяет, будет ли отображаться визуализируемое имя вывода на изображении элемента в Графи­ческом редакторе.

Введенный таким образом вывод появляется на голубой линии в виде крестика с соответствующим именем. Щелчок правой кнопкой мыши на этом крестике вы­зывает всплывающее меню с пунктами 'Удаление' ('Delete') и 'Редактирование' ('Enter Pinstub'). Работа с изображениями и текстом аналогична соответствую­щим действиям в Графическом редакторе.

Используя схему счетчика, изобразим все входные и выходные сигналы в виде выводов в соответствии с рис. 2. Для удобства восприятия к изображению добав­ляется внутренний прямоугольник (или любая другая фигура), обрамляющий внутренние названия выводов, и линии, обозначающие сами выводы. Сохраним полученное изображение под общим именем проекта, как 'exampl.sym' с помо­щью пункта Главного меню 'FiIe\Save As...'.
2.4. Язык проектирования AHDL и Текстовый редактор

Альтернативой графическому вводу логической схемы проектируемого устройства является язык AHDL (Altera Hardware Description Language - Язык описания устройств фирмы Altera). Этот язык высокого уровня наиболее подхо­дит для разработки сложной комбинаторной логики, операций над группами пе­ременных, конечных автоматов, таблиц истинности и логики с параметрами. Соз­давать и редактировать файл текстового описания с расширением .tdf (Text Design File) можно в любом текстовом редакторе. Однако рекомендуется для этого ис­пользовать встроенный в MAX+PLUS II Текстовый редактор (Text Editor - за­пускается пунктом Главного меню 'MAX+PLUS II\Text Editor'), обладающий некоторыми специальными возможностями. Созданный .tdf содержит всю необходимую для Компилятора информацию о логической схеме устройства.

Компилятор MAX+PLUS II также может генерировать файлы на языке AHDL: .tdx файлы (Text Design Export File) и .tdo файлы (Text Design Output File), которые могут быть сохранены как .tdf и использованы для преобразования и редактирования проекта. Помимо этого, на этапе компиляции выявляются и отображаются в Текстовом редакторе все найденные в .tdf файле ошибки.

В рамках этих методических указаний невозможно полностью описать язык проектирования AHDL, поэтому ограничимся кратким описанием структуры файла. Более подробную информацию можно найти в файлах 'Справки', поставляемых с программой MAX+PLUS II.

В структуру файла на языке AHDL могут входить следующие разделы:

TITLE - Заголовок (для удобства работы проектировщиков);

INCLUDE - Список подключаемых файлов (.inc файлы);

CONSTANT - Перечень констант;

DEFINE - Определение оценочных функций (>, <, =);

PARAMETERS - Описание параметров мега- и макрофункций;

FUNCTION - Прототипы используемых функций;

ASSERT - Оператор контроля, проверяющий истинность любого выраже­ния, использующего параметры, числа, оценочные функции, а также состояние порта (используется или не используется). За проверкой условия следует арифме­тическое выражение;

SUBDESIGN - Секция, содержащая описание входных, выходных и двуна­правленных выводов;

VARIABLE - Секция описания переменных;

BEGIN...END - Секция логики. Содержит описание логических операций, выполняемых устройством. Может включать следующие подразделы:

DEFAULTS...END DEFAULTS - определение значений 'по умолчанию';

ASSERT - оператор контроля, аналогичный ранее описанному; Выражение 'алгебры логики';

Уравнение управления - логическое выражение, используемое для ус­тановки или сброса управляющих сигналов конечного автомата;

CASE...IS...WHEN...{WHEN OTHERS}...END CASE - оператор условия;

FOR...IN...TO...GENERATE...END GENERATE - оператор цикла;

IF...GENERATE...{ELSE GENERATE}...END GENERATE - опера­тор условия по арифметическому выражению;

IF...THEN...{ELSIF...THEN}...{ELSE}...END IF - оператор условия по логическому выражению;

TABLE...=>... =>...END TABLE - таблица истинности;

Строки комментариев начинаются с двойного тире '—';

Для ввода новых и корректировки существующих текстовых файлов в MAX+PLUS II предназначен Текстовый редактор (Text Editor - пункт 'MAX+PLUS II\ Text Editor' Главного меню). Помимо обычных для текстовых редакторов функций, он имеет некоторые дополнительные возможности:

Цветовыделение. Эта опция включается/выключается выбором пункта Глав­ного меню 'Options\Syntax Coloring' и позволяет выделять различными цветами разные синтаксические конструкции. Задать цвета для различных элементов языка можно в пункте Главного меню 'Options\Color Palette...';

Вставка каркасов конструкций языка. Существует возможность вставки в текст файла готового каркаса различных языковых конструкций. Помимо конст­рукций языка AHDL, можно воспользоваться конструкциями языка VHDL (язык для описания высокоскоростных интегральных схем) и конструкциями языка ло­гической верификации (Verylog HDL). Вставка вызывается выбором соответст­вующего подпункта меню 'Templates' в Главного меню или во всплывающем ме­ню при щелчке правой клавишей мыши.

Поиск парного разделителя. Эта функция осуществляет поиск в тексте файла разделителя, парного выделенному (например, ключевое слово 'BEGIN', соответ­ствующее выделенному 'END', или закрывающуюся скобку, соответствующую выбранной закрывающейся). Для этого надо выделить соответствующий элемент языка и выбрать команду 'Find Matching Delimiter' в пункте 'Utilities' Главного меню или во всплывающем меню.

Поиск выделенного узла в Редакторе подложки или Графическом редак­торе. Выделив в Текстовом редакторе имя узла, можно задать его поиск в Редак­торе подложки или Графическом редакторе (окна которых открываются автома­тически). Для реализации этой возможности нужно выделить имя узла и выбрать подпункт 'Fined Node in Floorpian...' или 'Fined Node in Design File...' в пункте 'Utilities' Главного меню.

Также к выделенным узлам относятся функции установки настроек ('Assigne') и Временного анализа ('Timing Analysis').
2.5. Компилятор

Прежде, чем запускать Компилятор проекта (меню 'MAX+PLUS II \Compiler'), запустим Иерархический дисплей (меню 'MAX+PLUS II\Hierarchy Display'). Обратите внимание, что на этом этапе в рабочем поле Ие­рархического дисплея содержится только название проекта 'exampl' и значок графического файла, который впоследствии будет лежать в основе иерархии все­го проекта.

Теперь запустим Компилятор. Назначим семейство и тип ПЛИС соответствен­но 'CLASSIC и 'EP610ILC-10' (меню 'Assign\Device...'). Процесс компиляции запускается нажатием на кнопку 'Start' в окне Компилятора и состоит из не­скольких последовательных этапов. Рассмотрим их в порядке следования.

Экстрактор Списка Связей (Compiler Netlist Extractor) преобразует все ба­зовые файлы проекта (файлы, имеющие расширения следующих типов: .adf, .edf, .gdf, .sch, .smf, .tdf, .v, .vhd, .wdf, .xnf) в отдельные двоичные .cnf файлы (Compiler Netlist File), с которыми впоследствии и работает Компилятор. Поми­мо этого создается .hif файл (Hierarchy Interconnect File), документирующий ие­рархические связи между отдельными файлами проекта. Во время своей работы Экстрактор Списка Связей проверяет файлы проекта на предмет ошибок типа двойных имен узлов (исключая связанные между собой выводы микросхемы).

Построитель Базы Данных (Database Builder) интегрирует все отдельные файлы проекта, преобразованные на предыдущем шаге в двоичные .cnf файлы, в единую базу данных проекта, базируясь на информации об иерархии проекта в .hif файле. На этом этапе компиляции проверяется логическая законченность и последовательность проекта, выявляются синтаксические ошибки (например, узел без источника или приемника сигнала),

Модуль Логического Синтеза или Логический Синтезатор (Logic Synthe­sizer) синтезирует логику проекта, используя базу данных, полученную на пре­дыдущем этапе компиляции. Осуществляется минимизация и оптимизация логи­ческих функций в соответствии с выбранным типом ПЛИС и заданной стратегией минимизации. (Напомним, что настройка параметров минимизации осуществля­ется в пункте меню 'Assign\Global Project Logic Synthesis...'). Здесь выявляются ошибки типа недозволенных комбинаторных обратных связей и зашитых вместе выводов трехстабильных буферов.

Распределитель (
  1   2   3   4


написать администратору сайта