1 цифровые электронные схемы 2


Название1 цифровые электронные схемы 2
страница14/17
Дата публикации06.08.2013
Размер1.01 Mb.
ТипДокументы
userdocs.ru > Информатика > Документы
1   ...   9   10   11   12   13   14   15   16   17
^

3.4 Методика проектирования на основе PLD



Методика проектирования на основе PLD включает в себя четыре основных последовательно выполняемых этапа:

 ввод исходных данных для проектирования;

 выполнение синтеза (компиляция) отдельных частей проекта и всего проекта в целом;

 моделирование проекта;

 программирование и тестирование PLD.

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

В общем случае разработка сложных иерархических проектов на PLD ничем не отличается от известных подходов к проектированию цифровых систем. Здесь возможно проектирование как “сверху вниз”, так и “снизу вверх”, использование библиотек стандартных блоков и функциональных узлов, а также заимствование опыта предыдущих разработок.

Разработка проектов на PLD выполняется с помощью программных средств автоматизированного проектирования. Известные пакеты автоматизированного проектирования на PLD (PALASM, CUPL, ABEL) решают только задачи функционально-логического проектирования, а для решения задач конструкторского проектирования, как правило, имеют информационную связь (на уровне файлов) с соответствующими пакетами (OrCAD, P-CAD). С другой стороны, наличие схемного ввода некоторых пакетов (MAX+PLUSII, Synario) позволяет непосредственно вводить проекты, разработанные на элементах “жесткой” логики в системах конструкторского проектирования.

Остановимся более подробно на рассмотрении основных этапов методики проектирования на основе PLD.

^ 3.4.1 Ввод проекта

Ввод проекта заключается в описании одним из способов машинного представления всех частей проекта. Различные пакеты имеют различные способы ввода, но наиболее распространенными являются следующие - текстовый‚ схемный и в виде временных диаграмм.

Текстовый ввод предполагает описание проекта (части проекта) на некотором исходном языке используемого программного средства в виде текстового файла. Наибольшее распространение получили языки исходного описания пакетов PALASM, CUPL и ABEL, которые с незначительными изменениями повторяются в других пакетах. Текстовый файл исходного описания проекта, как правило, включает заголовок, определение переменных и назначение им соответствующих выводов PLD, а также описание функционирования устройства в виде логических уравнений, алгоритма функционирования, таблицы истинности или конечного автомата. Иногда в исходный файл описания проекта включаются тестовые вектора для моделирования проекта.

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

Ввод проекта в виде временной диаграммы осуществляется с помощью графического редактора. Вначале определяются переменные (сигналы) проекта, а затем описывается поведение устройства в виде временной диаграммы.

Некоторые пакеты поддерживают ввод проекта на языке VHDL и других языках проектирования (HDL, DDL и др.), но для этого, как правило, необходима дополнительная программа.

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

^ 3.4.2 Синтез проекта

Автоматизированный синтез простых проектов фактически заключается в компиляции исходного описания проекта во внутреннее представление используемого программного средства (абсолютный файл) и/или JEDEC-файл для настройки PLD. В последующем абсолютный файл используется для моделирования. Многие пакеты также позволяют формировать файлы для связи проекта с другими пакетами функционально-логического и конструкторского проектирования. Задачи оптимизации, решаемые на этом этапе, сводятся к минимизации логических функций, управляющих выходными макроячейками PLD.

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

Специфические свойства архитектуры PLD предоставляют новые возможности при синтезе комбинационных и последовательностных схем. Важное место среди методов синтеза на PLD цифровых устройств, математической моделью которых является конечный автомат, занимают методы синтеза одноуровневых схем, поскольку они обладают наибольшим быстродействием. Благодаря своей блочной структуре, CPLD оказались удобными для построения сложных иерархических и параллельных устройств. При построении микропроцессорных систем для согласования сигналов между различными микросхемами часто используются простейшие функциональные узлы‚ такие как инверторы‚ вентили‚ триггеры‚ регистры и др. Совокупность подобных элементов получила название логики склеивания (glue logic). PLD получили очень широкое распространение при реализации логики склеивания‚ причем в качестве элементов этой логики могут выступать простые функциональные узлы как комбинационного, так и регистрового типа.

Синтез сложных проектов на CPLD дополнительно требует специальной программы, называемой упаковщиком (fitter), которая выполняет “подгонку” проекта (fitting) в заданную структуру CPLD. При синтезе сложных проектов следует планировать 20-40% использования ресурсов CPLD для возможности корректировок и эффективной работы упаковщика. Проект рекомендуется создавать путем выполнения ряда итераций: вначале реализуется ядро проекта, а затем добавляется остальная логика до полного проекта. При этом обеспечивается лучшее решение по упаковке проекта и наиболее рациональное назначение сигналов внешним выводам.

Большие проекты могут разбиваться на отдельные PAL-блоки как автоматически, так и указываться пользователем с помощью директив. Пользователем также могут указываться назначение сигналов отдельным выводам. Если после указаний пользователя проект не может быть упакован в заданное устройство, программа запрашивает возможность альтернативных решений (компромиссов): переназначение выводов, оптимизацию типов триггеров, повторное прохождение сигналов через устройство и др.

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

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

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

Логическое моделирование делится на функциональное и временное (временной анализ). Функциональное моделирование выполняется программным обеспечением на основании тестовых векторов входных и выходных сигналов проекта. Тестовые вектора могут задаваться в файле исходного описания проекта или находиться в отдельном файле. Некоторые пакеты допускают задание тестовых векторов в виде временных диаграмм. При логическом моделировании возможно решение следующих задач:

1) определение выходных значений по заданным входным воздействиям;

2) сравнение вычисленных выходных значений с эталонными;

3) моделирование неисправностей устройства.

Временное моделирование выполняется на временных моделях PLD и заключается в определении времени прохождения и формирования различных сигналов. Результаты временного моделирования могут также представляться в виде временных диаграмм.

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

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

CPLD, поддерживающие JTAG-стандарт, могут тестироваться непосредственно на плате методом граничного сканирования. Для этого программным обеспечением на основании тестовых векторов создаются тестовые последовательности в JTAG-стандарте. При этом допускается тестирование

 одного CPLD;

 цепочки CPLD;

 цепочки всех устройств проекта (в том числе и CPLD), поддерживающих JTAG-стандарт.

^ 3.4.4 Программирование PLD

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

CPLD, в которых настраиваемым элементом является SRAM, конфигурируются всякий раз, при включении питания. Процесс конфигурирования состоит из двух частей: загрузки данных и обнуления всех регистров. Данные о настройке CPLD могут поступать от управляющего компьютера, микропроцессора, ПЗУ, ОЗУ, других CPLD. Форма передаваемых данных может быть как последовательная, так и параллельная. Имеется также ряд режимов программирования, когда CPLD выступает в качестве активного устройства (само управляет процессом загрузки данных), и в качестве пассивного устройства (другое устройство управляет процессом загрузки данных).

Как правило, фирмы-изготовители CPLD выпускают специализированные ППЗУ для программирования CPLD. В такие ППЗУ с помощью программатора записывается информация о настройке CPLD и они устанавливаются на плате вместе с CPLD. С целью минимизации площади платы для передачи данных между ППЗУ и CPLD используется последовательный интерфейс, а CPLD выступает в качестве активного устройства.

Некоторые CPLD, поддерживающие JTAG-стандарт, могут программироваться на плате, используя сигналы JTAG-стандарта. Для этого на границе платы устанавливается специальный разъем для передачи сигналов управления процессом программирования. Несколько CPLD на одной плате могут объединяться в цепочки, но в каждый момент времени допускается программирование только одного CPLD.

1   ...   9   10   11   12   13   14   15   16   17

Похожие:

1 цифровые электронные схемы 2 iconПрограмма для 10 класса «Оператор пк»
Построение таблиц истинности для логических функций. Законы алгебры логики. Логические элементы и основные логические устройства...
1 цифровые электронные схемы 2 icon1. Определить состав ядра атома (число протонов и нейтронов) для...
Составить электронные схемы, электронные и электронно-графические формулы атома магния и атома хлора
1 цифровые электронные схемы 2 icon2 Электронные таблицы
Электронные таблицы (табличные процессоры) – это прикладное программное обеспечение общего назначения, предназначенное для обработки...
1 цифровые электронные схемы 2 iconТипы промышленных зданий по объемно-планировочным решениям и их схемы
Железнодорожный транспорт. Три схемы организации внешнего железнодорожного транспорта
1 цифровые электронные схемы 2 iconРабочая программа -2012 г по курсу «Электротехника, электроника и схемотехника»
...
1 цифровые электронные схемы 2 iconСтабилизаторы напряжения (СН)
Изменения напряжения источника питания могут вызвать изменения напряжения на выходе питаемой схемы, неотличимые от тех изменений,...
1 цифровые электронные схемы 2 iconЦифровые показатели работы по циклу акушерства

1 цифровые электронные схемы 2 iconЭлектронные часы с календарем и будильником
Электронные часы предназначены для индикации теку­щего времени суток (минуты и часы), дней недели (по­недельник — воскресенье), месяца...
1 цифровые электронные схемы 2 icon1. Понятие электрической цепи, электрической схемы, схемы замещения,...
Электрическая цепь  — совокупность устройств, элементов, предназначенных для протекания электрического тока, электромагнитные процессы...
1 цифровые электронные схемы 2 iconПараллельное и последовательное соединение аккумуляторов что это такое?
При параллельном соединении, аккумуляторы соединяют так, чтобы положительные клеммы всех аккумуляторов были подключены к одной точке...
Вы можете разместить ссылку на наш сайт:
Школьные материалы


При копировании материала укажите ссылку © 2015
контакты
userdocs.ru
Главная страница