НПО Системы Безопасности
(499)340-94-73 График работы:
ПН-ПТ: 10:00-19:00
СБ-ВС: выходной

Главная » Периодика » Безопасность

0 ... 9899100101102103104 ... 233


Просмотр временных диаграмм, полученных в результате моделирования

Результаты моделирования можно просматривать в редакторе временных диаграмм (Waveform Editor). Редактор считывает выходной файл с расширением .SO, генерируемый программой моделирования, и отображает временную диаграмму в окне в стиле электронной таблицы.

Язык высокого уровня CUPL

Трассировщик-компилятор ПЛИС поддерживает язык высокого уровня CUPL Hardware Description Language. В этой книге он называется CUPL или язык CUPL.

Для сокращения времени моделирования язык CUPL содержит замену выражений на уравнения и стенографическое обозначение списков, адресных диапазонов и битовых полей.

Синтаксис конечных автоматов предоставляет средства реализации любого синхронного приложения, с использованием модели конечного автомата либо Миля (Mealy), либо Мура (Moore). Синтаксис таблиц истинности открывает путь для четкого выражения определенных логических конструкций.

Справочная система пакета Protel 99 SE содержит раздел CUPL Language Reference, содержащий исчерпывающую информацию по использованию этого языка.

Поддерживаемые устройства

Поддержка программируемых логических устройств различных производителей дает пользователям два ярко выраженных преимущества. Первое заключается в том, что пользователю необходимо изучить только среду проектирования и язык. Можно сконструировать все, что угодно: от простого адресного декодера на основе GAL16V8 вплоть до запатентованной конструкции на основе кристаллов серии 5000 фирмы ХШпх. Второе преимущество состоит в возможности упаковки одной и той же функциональной логики в физически различные микросхемы, что, несомненно, дает свободу в выборе производителя кристалла.

Обзор процесса проектирования устройств на базе ПЛИС

В этом разделе приведено описание процесса конструирования устройств на базе ПЛИС. Здесь очерчивается последовательность прохождения пользователя от построения концепции проекта до получения запрограммированного устройства.

Ввод проекта

Проект можно ввести либо при помощи редактора принципиальных схем, либо описать на языке CUPL HDL. Выбор метода будет зависеть от природы проекта и предпочтений разработчика.



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

Для создания принципиальной схемы проекта на ПЛИС пользователь должен пользоваться компонентами из специализированной библиотеки PLD Symbols.lib базы данных PId.ddb, находящейся в каталоге \Program Files\Oesign Explorer 99 SE\Library\Sch.

После завершения логического конструирования пользователю необходимо выбрать целевое устройство (конкретный тип микросхемы), сконфигурировать трасси-ровщиккомпилятор и включить опцию вывода в диалоговом окне Configure. Проекты на основе принципиальной схемы сначала автоматически транслируются компилятором в код CUPL HDL, а затем CUPL код компилируется обычным способом.

Проект, описанный на языке CUPL HDL

Аппаратно-ориентированный описательный язык CUPL позволяет разрабатывать проекты на базе ПЛИС различными методами, включая логические выражения, метод конечных автоматов и таблицы истинности. Для сокращения времени моделирования язык CUPL содержит замену выражений на уравнения и стенографическое обозначение списков, адресных диапазонов и битовых полей.

Синтаксис конечных автоматов предоставляет средства реализации любого синхронного приложения, с использованием модели конечного автомата либо Миля (Mealy), либо Мура (Moore). Синтаксис таблиц истинности открывает путь для четкого вьфажения определенных логических конструкций.

Компиляция проекта

При компиляции CUPL кода выполняются следующие шаги.

Предварительная обработка входного файла

При считывании входного файла программа компиляции обрабатывает препроцес-сорные директивы, такие, как $DEFINE и т. д. Затем генерируется промежуточный файл с дополнительно расшифрованными препроцессорными директивами.

Синтаксический анализ и преобразование конечных автоматов

Промежуточный файл анализируется табличным синтаксическим анализатором, формирующим таблицу перекодировки символов и подробные уравнения. Анализатор разлагает синтаксическую структуру конечных автоматов, таблицы истинности и функции пользователя на логические уравнения, а также во время обработки строк операторов выполняет элементарное логическое упрощение.

Проверка совместимости устройств и "деМорганизация"

Схема расположения выводов файла источника сличается с эталонной цоколевкой устройства из библиотечного файла с расширением .DL, при этом проверяется, все ли используемые переменные файла источника корректно вписываются в архитектуру выбранного кристалла.

Кроме того, этот модуль программы компиляции применяет теорему ДеМоргана к выходным переменным, если их полярность не соответствует полярности тех или иных выводов микросхемы. Это дает возможность проектам с активными сигналами



высокого уровня быть реализованным на микросхемах, где активными являются сигналы низкого уровня, и наоборот. К тому же на этой стадии компиляции выполняется первый уровень минимизации. Он уничтожит избыточные нулевые и единичные термы и термы произведения, содержащиеся внутри других термов произведения. На этом шаге строится конечная таблица символов, содержащая связи модели устройства и битовое представление логической структуры.

Логическая минимизация

Модуль логической минимизации выполняет алгоритмы минимизации битового потока логической структуры, полученного на предыдущем шаге. Он обрабатывает только те уравнения, которые требуют упрощения.

Модуль минимизации обрабатывает исходный файл выражений с помощью одного из выбранных алгоритмов: Quick (быстрый), QuineMcCluskey, Presto и Espresso. Лучшим алгоритмом для PAL архитектуры является QuineMcCluskey, а для PLA архитектуры - Espresso (очень хорош для совместно использующихся термов произведения). В общем случае. Espresso представляет собой достаточно быстрый алгоритм и дает почти те же результаты, что и QuineMcCluskey.

Сборка и формирование выходного файла

Сборочный модуль осуществляет упаковку проекта в требуемое устройство. Для этого он использует встроенные алгоритмы или вызывает внешнюю программу. Чтобы передать булеву логику в микросхему, сборочный модуль управляет макроячейками и мультиплексорами сложных устройств. Если проект невозможно упаковать в микросхему, появляется сообщение об ошибке. Кроме того, сборочный модуль формирует выходной файл, определенный в диалоговом окне Configure.

Именно сборочный модуль определяет, можно ли проект передать в кристалл микросхемы, и создает карту пережигания. Карта пережигания и символьная таблица используется в дальнейшем для выпуска документации и формирования JEDEC файлов.

Моделирование проекта

Для того чтобы промоделировать проект, сначала необходимо создать входной файл, он имеет расширение SI, а сам проект скомпилировать с включенной опцией ABS output.

Входной файл описывает предполагаемое функционирование устройства на ПЛИС в терминах входных и выходных значений (т. е. зависимость выходных сигналов от входных). Программа моделирования сравнивает предполагаемые значения с рассчитанными во время компиляции, содержащимися в ABS файле. Тестовый вектор, проверенный программой моделирования, можно включить в JEDEC файл и загрузить в логический программатор.

Программа моделирует задержки распространения, которые наиболее полно отражают поведение проекта после реализации в реальном кристалле микросхемы. Некоторые микросхемы имеют определенные особенности, и внутренние задержки для них смоделировать невозможно. Кроме этого, программа моделирования покажет реальное состояние гонок сигналов для этой микросхемы.



0 ... 9899100101102103104 ... 233