Предпосылки к развитию ПЛИС. Сравнительный анализ ПЛИС, СБИС и микроконтроллеров. Обзор аналогов: компараторы LM311 и LM339, на операционных усилителях, Р300Х, сравнительные устройства. Создание схемы устройства. Сравнение мировых производителей ПЛИС.
Некоторые производители ПЛИС предлагают программные процессоры для своих ПЛИС, которые могут быть модифицированы под конкретную задачу, а затем встроены в ПЛИС. Кроме чисто экономических предпосылок, этому способствует ряд дополнительных достоинств современных ПЛИС, которые заключается в том, что, сохраняя все преимущества однокристального решения, присущего заказным СБИС, устройства на основе ПЛИС могут очень быстро и с малыми затратами подвергаться модернизации (upgrade). Благодаря наличию во многих типах ПЛИС встроенных систем программирования и конфигурирования, позволяющих перепрограммировать их прямо на месте без использования внешних программаторов, устройства на ПЛИС могут модернизироваться даже находясь в постоянной эксплуатации у заказчика. Немалую роль в расширении областей применения ПЛИС, сокращении времени и снижении трудозатрат на проектирование сыграли и значительные успехи в создании инструментальных средств для разработки и выпуска конечных изделий на ПЛИС, основу которых составляют специальные пакеты программ, обеспечивающие весь производственный цикл по созданию цифровых устройств на ПЛИС, от разработки схем до выпуска готовых изделий. Программируемые логические интегральные схемы позволяют создавать устройства практически неограниченной сложности, с огромным количеством входов и выходов (бывают плис с больше чем 1000 выводов («пинов)), с огромной скоростью передачи данных, с большими значениями входных напряжений, большим объемом памяти (до 540 кбит), допустимую дозу облучения (что немаловажно при применении на атомных станциях, где, в случае возникновения опасности, электроника быстро выходит из строя и спасти ситуацию может только какая-нибудь устойчивая схемка, вроде нашего компаратора, который поймет, что допустимое напряжение превышено) - более трех миллионов (3000000) РАД (в то время, как летальная доза для человека, при которой смерть наступает через несколько часов - 10000 РАД, а первичная лучевая болезнь - 200 РАД), высокое быстродействие (вплоть до 5 наносекунд) и многое другое.
Введение
В последнее время особенно актуальной темой является обеспечение безопасности технологических процессов на различных производственных объектах (особенно на химических заводах и АЭС). Но для того, чтобы устранить проблему, сначала нужно ее выявить. Для определения неисправностей по показаниям, получаемым от различных датчиков, предназначено много автоматизированных устройств. Большинство из них действуют по принципу сравнения получаемого значения с некой «уставкой». С 2008 года наметилась тенденция по увеличению количества внедряемых на производства встроенных средств контроля, реализованных на программируемых логических интегральных схемах (ПЛИС), однако большинство предприятий в Украине все еще пользуются устаревшими методами и технологиями диагностирования неисправностей (в т.ч., основанными на микроконтроллерах, ASIC, специализированных компьютерах или базовых матричных кристаллах).
ПЛИС - это электронный компонент, используемый для создания цифровых интегральных схем. В отличие от обычных цифровых микросхем, логика работы ПЛИС не определяется при изготовлении, а задается посредством программирования (проектирования). Для этого используются отладочные среды, позволяющие задать желаемую структуру цифрового устройства в виде принципиальной электрической схемы или программы на специальных языках описания аппаратуры Verilog, VHDL, AHDL и др., что обеспечивает желаемую гибкость как при создании, так и при применении устройства на объектах: предусмотрена возможность корректирования неких параметров устройства под специфику конкретного производства (количество входов от датчиков, количество выходов, желаемый коэффициент надежности и прочее).
Альтернативой ПЛИС при создании средств контроля являются базовые матричные кристаллы, требующие заводского производственного процесса для программирования; ASIC - специализированные заказные БИС (большие интегральные схемы), которые при мелкосерийном и единичном производстве существенно дороже; специализированные компьютеры, процессоры (например, цифровой сигнальный процессор) или микроконтроллеры, которые медленнее ПЛИС изза программного способа реализации алгоритмов.
Некоторые производители ПЛИС предлагают программные процессоры для своих ПЛИС, которые могут быть модифицированы под конкретную задачу, а затем встроены в ПЛИС. Тем самым обеспечивается уменьшение места на печатной плате и упрощение проектирования самой ПЛИС. Самые распространенные из них рассматриваются в данной работе.
Последние годы характеризуются резким ростом плотности упаковки элементов на кристалле, многие ведущие производители начали серийное ПЛИС с эквивалентной емкостью более 1 млн. логических вентилей, при этом цены на программируемые логические схемы идут вниз (средняя цена опустилась от $2500 в 2005 до $400 в 2011 году), что еще более увеличивает конкурентоспособность данного вида устройств для обеспечения контроля на больших предприятиях.
1. Анализ проблемы
1.1 Предпосылки к развитию ПЛИС. Преимущества ПЛИС
Общей тенденцией развития элементной базы цифровой схемотехники, начиная с появления первых интегральных микросхем в начале 60-х годов и до настоящего времени, является непрерывное повышение числа логических элементов (ЛЭ), размещаемых на кристалле, с одновременным снижением удельной стоимости одного элемента. Увеличение числа ЛЭ непрерывно открывает возможности создания все более сложных цифровых устройств, размещаемых на одном кристалле. К основным (далеко не полным) положительным результатам этой тенденции можно отнести: - постоянное расширение функциональных возможностей и улучшение потребительских свойств конечных изделий;
- уменьшение габаритов и потребляемой мощности;
- повышение надежности.
Отражением этой тенденции в составе элементной базы цифровой схемотехники явился переход от интегральных микросхем (ИМС) малой и средней степени интеграции к большим (БИС) и сверхбольшим (СБИС) интегральным микросхемам. Одним из наиболее революционных результатов развития микроэлектроники явилась возможность создания первых микропроцессоров (начало 70-х годов), что дало мощный толчок к внедрению цифровых технологий обработки информации во всех сферах человеческой деятельности.
Однако далеко не все практические задачи цифровой схемотехники могут быть решены только лишь с использованием одних микропроцессоров. Это обусловлено органически присущей всем микропроцессорам особенностью, связанной с тем, что решение любой задачи микропроцессором всегда состоит из последовательности шагов конечной длительности, в то время как для решения многих задач (в том числе связанных и с обеспечением работы самих микропроцессоров) требуются устройства с минимальной задержкой выполнения логических функций. Существует три основных способа удовлетворить эту потребность: - использование наборов стандартной дискретной цифровой логики общего применения, например, наборов логических микросхем 74-й серии (ТТЛ, КМОП) и типовых периферийных БИС;
- использование заказных СБИС;
- использование программируемых логических интегральных схем (ПЛИС).
Наборы дискретной цифровой логики различных серий довольно длительное время являлись основной элементной базой для разработки цифровых устройств. В состав таких наборов входит большое число отдельных микросхем, предназначенных как для выполнения базовых логических функций (И, ИЛИ, НЕ), так и для выполнения функций типовых цифровых устройств, таких как триггеры, регистры, счетчики, мультиплексоры, дешифраторы и т.д., что дает возможность использовать их для разработки более сложных функционально законченных цифровых устройств.
Основной недостаток дискретной логики заключается в том, что для разработки конечных изделий обычно требуется большое число микросхем. Следствием этого является большое число внешних соединений, сложность конструкции и большие габариты печатных плат, большая длина соединительных проводников, сложность построения устройств с высокой тактовой частотой, низкая надежность. Для уменьшения числа микросхем при проектировании микропроцессорных систем был разработан ряд периферийных БИС, представляющих собой специализированные цифровые устройства, предназначенные для выполнения некоторых типовых функций в составе микропроцессорных систем, такие как контроллеры динамических ОЗУ, контроллеры прерываний, контроллеры прямого доступа в память, контроллеры шин и т.д. Однако даже применение периферийных БИС не позволяет полностью преодолеть основные недостатки дискретной цифровой логики.
Наиболее кардинально проблема габаритов, быстродействия, упрощения конструкций печатных плат и обеспечения надежности решается путем разработки и изготовления заказных СБИС (классический пример - чипсеты материнских плат и карт расширения персональных компьютеров). К сожалению, этот путь экономически оправдан только при крупносерийном производстве однотипных конечных изделий, вследствие высокой стоимости и длительных сроков подготовки производства заказных СБИС. Кроме того, при использовании заказных СБИС возможная модификация изделий требует существенных дополнительных материальных и временных затрат.
В то же время на практике достаточно часто возникают потребности в разработке оригинальных цифровых устройств и изделий, не рассчитанных на крупносерийное производство, для которых разработка заказных СБИС не приемлема либо по экономическим причинам, либо по срокам исполнения. В течение длительного времени единственным путем для решения таких задач являлось использование интегральных микросхем дискретной логики и периферийных БИС, ведь возможности первых поколений простых ПЛИС были весьма ограничены, а цена сложных ПЛИС очень высокой, кроме того, имелись определенные сложности и с проектированием цифровых устройств на ПЛИС.
В последние годы, однако, произошел резкий прорыв как в технологии изготовления ПЛИС, так и в разработке инструментальных средств, предназначенных для проектирования цифровых устройств на ПЛИС и выпуска готовых изделий. Технологический прорыв характеризуется резким увеличением числа эквивалентных логических вентилей, размещаемых на одном кристалле (до 10 млн вентилей в ближайшей перспективе), повышением рабочей частоты (до 400 МГЦ) с резким одновременным снижением как удельной, так и абсолютной стоимости. Так, по данным [1], стоимость ПЛИС емкостью 100 000 снизилась с 1500…3000 до 100…350 у. е. и эта тенденция является устойчивой. Кроме того, в [2] отмечается, что программируемая логика по темпам развития начала опережать другие направления цифровой электроники (универсальных микропроцессоров, сигнальных процессоров, микроконтроллеров и заказных БИС). Например, один из мировых лидеров по производству ПЛИС фирма «Xilinx» в I квартале 2007 г. (до финансового кризиса) увеличила объем продаж на 26% по сравнению с I кварталом 2006 г. При этом стоимость ПЛИС объемом до нескольких тысяч вентилей на украинском рынке, представленном целым рядом поставщиков электронных компонентов, составляет всего несколько у. е.
Основными фирмами-производителями ПЛИС в настоящее время являются такие фирмы, как «Altera», «Atmel», «Csypres», «Lattice», «Lucent», «Xilinx». В дальнейшем мы рассмотрим наиболее перспективные из них.
1.2 Сравнительный анализ ПЛИС, СБИС и микроконтроллеров
Технико-экономические показатели современных ПЛИС достигли такого уровня, который обеспечивает при выпуске партий изделий до нескольких сотен более низкую стоимость конечных изделий, чем применение заказных СБИС. Очевидно, что в ближайшее время этот порог будет повышаться, обеспечивая экономическую целесообразность применения ПЛИС и в крупносерийном производстве. Кроме чисто экономических предпосылок, этому способствует ряд дополнительных достоинств современных ПЛИС, которые заключается в том, что, сохраняя все преимущества однокристального решения, присущего заказным СБИС, устройства на основе ПЛИС могут очень быстро и с малыми затратами подвергаться модернизации (upgrade). Благодаря наличию во многих типах ПЛИС встроенных систем программирования и конфигурирования, позволяющих перепрограммировать их прямо на месте без использования внешних программаторов, устройства на ПЛИС могут модернизироваться даже находясь в постоянной эксплуатации у заказчика. С этой целью ведущие производители программируемой логики включают в средства проектирования устройств на ПЛИС поддержку обновления версии ПЛИС через интернет. Кроме того, сроки проектирования и выпуска готовой продукции на ПЛИС неизмеримо меньше, чем разработка и производство заказных СБИС, что в условиях динамично изменяющегося рынка иногда может иметь решающее значение.
Немаловажным обстоятельством является то, что для выпуска готовой продукции не требуется того сложнейшего и дорогостоящего технологического оборудования, которое требуется для производства заказных СБИС. Последнее обстоятельство открывает средним и даже мелким фирмам путь на рынок изделий современной электронной техники, который был ранее доступен только гигантам электронной промышленности (см. таблицу 1.1).
Таблица 1.1 - Относительные рейтинги эффективности применения стандартной логики, заказных СБИС и ПЛИС
Показатели Стандартная логика Заказные СБИС ПЛИС
Быстродействие 2 5 5
Плотность упаковки элементов 2 4 5
Стоимость 2 4 3
Время разработки 3 2 5
Время отладки 2 2 4
Время производства 3 2 5
Возможности модернизации 3 2 5
Риск изготовителя 3 2 5
Степень автоматизации процесса проектирования 2 4 5
При одинаковом числе логических элементов в проекте стоимость суммарного числа стандартных микросхем превышает стоимость ПЛИС, а преимущество в стоимости заказных СБИС проявляется только при очень большом объеме производства идентичных микросхем.
До недавнего времени микропроцессоры и ПЛИС представляли собой два независимых направления в цифровой микроэлектронике. Насущные потребности в дальнейшем повышении степени интеграции привели к разработке СБИС класса SOC (Systems On Chip) - т.е. «систем на кристалле».
Сущность такого подхода заключается в слиянии двух путей развития сложных универсальных микросхем (микропроцессоров и ПЛИС) в единое целое путем размещения на одном кристалле связанных между собой микропроцессорного ядра и массива вентилей ПЛИС. Пионером в создании подобных устройств явилась фирма «Atmel», которая в октябре 1999 г. выпустила первое семейство СБИС FPSLIC (Field Programmable System Level Integration Circuits, что можно перевести как «программируемые схемы системного уровня интеграции»).
Типовая микросхема FPSLIC фирмы «Atmel» содержит скоростное процессорное ядро AVR RISC с производительностью свыше 30 MIPS, массив FPGA объемом до 4000 эквивалентных логических вентилей, 10 кбайт x 16 программной памяти, 4 кбайт x 8 оперативной памяти, а также набор фиксированных периферийных устройств (два последовательных порта, три таймера-счетчика, интерфейс I2C, два параллельных порта). В состав семейства на сегодня входят три микросхемы типа AT94K10, AT94K20, AT94K40 с объемом FPGA в 1000, 2000 и 4000 вентилей соответственно [3]. В силу очевидных достоинств микросхем этого класса можно предположить, что СБИС класса SOC в ближайшее время будут интенсивно развиваться и получат широкое применение в цифровой схемотехнике.
Немалую роль в расширении областей применения ПЛИС, сокращении времени и снижении трудозатрат на проектирование сыграли и значительные успехи в создании инструментальных средств для разработки и выпуска конечных изделий на ПЛИС, основу которых составляют специальные пакеты программ, обеспечивающие весь производственный цикл по созданию цифровых устройств на ПЛИС, от разработки схем до выпуска готовых изделий.
2. Обзор аналогов
2.1 Компараторы LM311 и LM339
Безусловно, существует огромное количество компараторов, которые заточены под конкретные нужды. Также существует много схем и устройств с компараторами, например, LM339 (отечественный аналог - К1401СА1) и LM311 (отечественный аналог - КР554САЗ), внешний вид которых можно увидеть на рисунке 2.1.
Рисунок 2.1 - Внешний вид одной из микросхем UTC339E (LM339)
Такие микросхемы часто встречаются, в частности, на системных платах ЭВМ, а также в системах управления ШИМ контроллеров в блоках преобразования напряжения (например в компьютерных блоках питания с системой питания ATX). Их стоимость также невелика: в пределах одного-двух долларов, однако функции этих компараторов ограничены и они могут быть применены только в специализированных областях либо с дополнительными устройствами. Кроме того, как несложно заметить, количество входов и выходов у них строго задано, у них нет возможности запоминать значения сигналов, чтобы сравнить, скажем, числа, подающиеся в двоичном коде, у них нет многих простейших функций. Такие компараторы могут только сравнивать несколько одновременно подаваемых значений напряжения и выбирать из них меньшее / большее.
2.2 Компараторы на операционных усилителях
Также компараторы строятся на основе микросхем операционного усилителя. Сравнительные микросхемы таких устройств предназначены для сопоставления двух аналоговых сигналов и предоставления информации о большем из них. Размеры таких схем - до 5 сантиметров. Внешний вид некоторых аналоговых компараторов можно увидеть на рисунке 2.2.
Рисунок 2.2. - Внешний вид некоторых компараторов
Принцип работы данной микросхемы основан на «узнавании», то есть в таком случае важна разница характеристики сигналов, а не пиковые уровни, однако максимальные все же необходимо учитывать, чтобы они находились в пределах допустимого уровня для конкретной микросхемы. Сравнительная микросхема построена по типичному пороговому принципу, то есть состояние схемы компаратора изменяется, когда сигнал на выходе достигает определенного уровня. Данные микросхемы применяются как самостоятельные элементы в схемах различных регуляторов, или как составная часть более сложной микросхемы - таймер, использующихся в генераторах импульсов различных видов (см. рисунок 2.3.).
Рисунок 2.3 - Схема компаратора на операционном усилителе (MA710)
В качестве компаратора можно использовать практически любой операционный усилитель, для чего достаточно просто исключить обратную связь. Для этих целей желательно подбирать усилители с максимальными характеристиками по усилению и с большой скоростью нарастания сигнала. Следует отметить, что ОУ можно превратить в сравнительную микросхему, а вот наоборот - нет, потому как не может выполнять функцию усиления или разделения, она для этого не предназначена.
Чаще всего в схемотехнике используются микросхемы-компараторы К554САЗ и К521САЗ. Эти микросхемы идентичны по своей структуре и характеристикам: имеют мощный выход (до 50 МА), высокую стабильность и низкую стоимость. Благодаря тому, что в принципиальную схему компаратора включен транзистор с открытым коллектором и эмиттером, микросхему можно подключать в зависимости от необходимости либо с общим эмиттером, либо с общим коллектором. Например, если требуется согласовать выходной уровень с уровнем других логических микросхем, компаратор подключается по схеме с открытым коллектором.
Большинство сравнительных микросхем рассчитано на использование при двухполярном напряжении питания ±15 В, но так же могут работать и при однополярном от 5 до 15 В. Большинство сравнительных микросхем работают достаточно эффективно, но в некоторых ситуациях, например при подаче на вход медленно изменяющегося сигнала с небольшим высокочастотным импульсом, появляется специфический шум, так называемое дребезжание. Дребезг возникает в результате множественных переключений компаратора на границе порогового уровня. Чтобы устранить дребезжание, можно его устанавливать между выходами малой емкости (от 10 до 1000 ПФ), либо с помощью разнесения порогов. Первый способ не всегда подходит, потому что изза емкости существенно падает быстродействие микросхемы. Второй способ состоит в установке различных пороговых напряжений на включение и выключение, например, когда микросхема срабатывает при более высоком напряжении. Подобный принцип разнесения порогов (гистерезис) используется в формирователе сигнала триггере Шмитта (см. рисунок 2.4.).
Рисунок 2.4 - Введение гистерезиса в счет положительной обратной связи
Гистерезис в схему компаратора вводится путем подключения трех транзисторов: так как на выходе напряжение постоянно колеблется резистор (R3) сдвигает потенциал неинвертирующего вывода то в направлении резистора (R1), то в направлении резистора (R2). Таким образом, создается дополнительный ток, что в свою очередь приводит к падению напряжения. Заметим, что схема подключения на транзисторах существенно влияет на увеличения быстродействия срабатывания.
2.3 Компараторы серии Р300Х
Также, в качестве примера, можно привести компаратор напряжений P3003, который все еще используется в некоторых лабораториях и даже производствах стран СНГ и Азии (Индия, Монголия, Пакистан). Компараторы напряжений Р3003, Р3003М1-1, Р3003М1-2 были разработан и выпускались ПО «Краснодарский ЗИП» до конца двадцать первого века. В настоящее время выпуск Р3003, Р3003М1-1, Р3003М1-2 прекращен, однако их еще повсеместно используют в метрологии и электротехнике (см. рисунок 2.5).
Рисунок 2.5 - Внешний вид компаратора P3003
Этот компаратор предназначается для: - компарирования и измерения напряжения постоянного тока;
- выдачи калиброванных напряжений от 10 НВ до 11,111110 В;
- усиления напряжения от 20 НВ до 10 В с выходами на цифровой и аналоговый приборы (10 В, 5 МА);
- питания прецизионных электрических цепей (10 В, 10-25 МА).
При компарировании и измерении напряжения совместно функционируют встроенный калибратор, дифференциальный измерительный усилитель, дифференциальный микровольтметр и делитель входного напряжения - вещи, которые довольно просто подключаются и к любому другому компаратору практически без затрат. Но посмотрим на характеристики этого чудо-прибора: Класс точности: 0,0005 (для сравнения, у цифровых компараторов точность практически ограничена только точностью входных сигналов).
Предел допускаемой основной погрешности компарирования для разных значений напряжения, равняется, МКВ: ±(5U 1) (U=11,111110 D);
±(5U 0,1) (U=1,1111110);
±(10U 0,04) (U=0,1111110);
±(50U 4) (U=111,11110);
Нагрузочная способность по выходу АВ: 10 В; 5 МА
Питание от сети переменного тока: 220±22 В; 50, 60 Гц
Масса: 13 кг (в то время как масса цифровых и даже некоторых аналоговых компараторов не превышает нескольких грамм).
Габариты: 488х170х380 мм (габариты некоторых микроконтроллеров не превышают 10x2x5 мм).
Цена такого прибора колеблется в районе 24000 рублей, т.е. 850 долларов. Тем не менее, как мы убедились, возможностей у Р3003 действительно немного. На базе ПЛИС, к которым мы придем позже, можно спроектировать устройство в сотни тысяч раз более сложное, а его себестоимость (исключая оплату труда программиста) будет в восемь раз меньше.
Создать цифровой компаратор, отвечающий требованиям конкретного производства, проще всего программным путем. Это позволит задать ему необходимые характеристики, а также, при необходимости, относительно безболезненно изменить их, слегка подкорректировав программу. Далее рассматриваются два наиболее распространенных варианта создания такого компаратора.
Сравнительное устройство на микроконтроллере
Все рассмотренные компараторы (кроме Р3003 и его аналогов) являются недорогими, однако узкими в своей специализации, а кроме того современные средства позволяют самому программировать устройство под свои конкретные нужды. Например, сделать на микроконтроллере компаратор под заданное количество входов довольно просто можно в программе CODEVISIONAVR. Например, напишем программу, которая будет выводить информацию о сравнении значений напряжения на двух ножках разных портов на жидкокристаллический дисплей (дальнейший код написан для примера и, вполне возможно, требует доработок): /*****************************************************
if (PORTA.5>PORTB.5) {sprintf (lcd_buffer, «На пятую ножку порта А подается большее напряжение, чем на пятую ножку порта B»);
delay_ms(2000); lcd_clear(); lcd_gotoxy (0,0);} if (PORTA.5<PORTB.5) {sprintf (lcd_buffer, «На пятую ножку порта B подается большее напряжение, чем на пятую ножку порта A»);
delay_ms(2000); lcd_clear(); lcd_gotoxy (0,0);} if (PORTA.5=PORTB.5) {sprintf (lcd_buffer, «На пятую ножку порта А подается такое же напряжение, как на пятую ножку порта B»);
Либо без LCD, чистый код: if (PORTA.1>PORTB.1) {PORTC=0b11111111}; // на порте C - значение «255» в двоичном коде if (PORTA.1<PORTB.1) {PORTC=0b00000111}; // на порте С - семерка if (PORTA.1=PORTB.1) {PORTC=0b00000000}; // выход (порт С) равен 0.
Себестоимость такого компаратора (или другого, оптимизированного) будет, за исключением оплаты труда программиста, равняться стоимости микроконтроллера, т.е., для ATMEGA16 - в пределах 4 $. Однако даже созданные программно, заточенные под конкретные нужды компараторы, в которые будут заложены (если рассматривать пример атомной станции) функции контроля и отказоустойчивость, в любом случае будут ограничены возможностями микроконтроллера - как по напряжению, так и по количеству ножек (сравниваемых одновременно сигналов). Однако можно создавать еще более сложные и, соответственно, функциональные устройства сравнения.
Сравнительные устройства на ПЛИС
Программируемые логические интегральные схемы позволяют создавать устройства практически неограниченной сложности, с огромным количеством входов и выходов (бывают плис с больше чем 1000 выводов («пинов)), с огромной скоростью передачи данных, с большими значениями входных напряжений, большим объемом памяти (до 540 кбит), допустимую дозу облучения (что немаловажно при применении на атомных станциях, где, в случае возникновения опасности, электроника быстро выходит из строя и спасти ситуацию может только какая-нибудь устойчивая схемка, вроде нашего компаратора, который поймет, что допустимое напряжение превышено) - более трех миллионов (3000000) РАД (в то время, как летальная доза для человека, при которой смерть наступает через несколько часов - 10000 РАД, а первичная лучевая болезнь - 200 РАД), высокое быстродействие (вплоть до 5 наносекунд) и многое другое.
Проектирование на ПЛИС можно осуществлять схемотехническим методом, тогда простой компаратор, выясняющий, больше, меньше или равен сигнал, пришедший с А, сигналу с B будет выглядеть так, как изображено на рисунке 2.6.
Рисунок 2.6 - Простой компаратор в среде MAX plus II
Несложно заметить, что схема даже самого простого компаратора не так легка и читаема, как того бы хотелось. В Quartus и даже Max plus (если использовать подключаемые библиотеки) компаратор можно поставить отдельным блоком, однако это будет тот же компаратор, который мы рассматривали ранее: уровня LM311 или похожего. При увеличении количества входов схема будет быстро усложняться. Также существенным минусом является то, что в теле такой схемы-программы нельзя оставлять комментарии, что еще больше затрудняет проектирование сложных устройств. К счастью, в программных средах фирмы Altera существует возможность создать необходимое устройство на одном из языков программирования Hardware Description Language: VHDL или Verilog HDL. Вот как выглядит тот же самый компаратор, написанный на языке VHDL: -
- n-bit Comparator (ESD book figure 2.5)
- by Levichev Artem, 03/2011
- this simple comparator has two n-bit inputs & - three 1-bit outputs
-
library ieee;
use ieee.std_logic_1164.all;
-
entity Comparator is generic (n: natural:=2); - описание портов входа и выхода port (A: in std_logic_vector (n-1 downto 0);
B: in std_logic_vector (n-1 downto 0);
less: out std_logic;
equal: out std_logic;
greater: out std_logic);
end Comparator;
-
architecture behv of Comparator is begin process (A, B) begin if (A<B) then less <= "1"; equal <= "0"; greater <= "0";
elsif (A=B) then less <= "0"; equal <= "1"; greater <= "0";
else less <= "0"; equal <= "0"; greater <= "1";
end if; end process; end behv;
-
Данная реализация, как заметно, является гораздо более читабельной и понятной. Также немаловажно, что при увеличении количества портов и количества входов такая программа не будет так быстро загромождаться и, в любом случае, в ее теле всегда можно будет написать пояснения для себя или будущих разработчиков.
3. Разработка аппаратной части
3.1 Создание схемы устройства
Проектируем устройство, которое будет отвечать нашим потребностям: компаратор с дополнительной системой проверки его на правильность функционирования. В дальнейшем разработка будет вестись на ПЛИС.
Структурная схема устройства
Создаем схематический проект будущего устройства. В режиме работы на схему сравнения будут поступать два цифровых сигнала, из которых, в зависимости от того, равны ли входящие значения, будет формироваться один выходной. В режиме тестирования на компаратор должен подаваться один сигнал (включение режима тестирования), и, в зависимости от результатов, демонстрируемых цифровым компаратором, на выход будет подаваться сигнал «Норма» (устройство функционирует нормально) либо «Ненорма» (замечен сбой в работе устройства) - см. рисунок 3.1.
Рисунок 3.1 - Схематическое представление будущего устройства
Первичный вариант электрической принципиальной схемы системы
Этот вариант был создан вначале, чтобы определиться с основными направлениями разработки. Здесь есть несколько ошибок, и в результате опытный образец при некоторых условиях выдавал неверные значения.
Рисунок 3.2 - Предварительная электрическая принципиальная схема системы
Заключительный вариант электрической принципиальной схемы системы
После детального рассмотрения первого варианта, анализа похожих устройств и возможностей реализации отдельных компонентов, нашлись несколько путей упрощения схемы. Во-первых, вместо двух счетчиков с четырьмя выводами вполне можно поместить один счетчик, и его сигналы раздваивать на входы А и В. Еще проще вместо этого счетчика поместить четыре простых триггера (это, в принципе, и есть схема счетчика) - ведь тогда в схеме будут использоваться только однотипные, взаимозаменяемые элементы.
Значительно упрощается правая часть схемы: нашелся способ поместить всего один элемент «И» вместо счетчика, двух элементов «И» и триггера. После всех этих упрощений, схема, выполняя все те же функции, приобретает значительно более простой и читабельный вид (см. рисунок 3.3).
Рисунок 3.3 - ЭП схема контроля компаратора
Производим набор данной схемы Quartus. Некоторые элементы в этой среде проектирования изображаются по-другому. К примеру, вместо одного компаратора на восемь входов нужно поместить четыре однотипных компаратора по два входа. Необходимо также указать полную схему подключения триггеров, также меняются некоторые входы (см. рисунок 3.4).
Рисунок 3.4 - ЭП схема системы, набранная в Quartus
Проверяем правильность работы системы: создаем Vector Waveform file, задаем необходимые для проверки входы и выходы, симулируем и смотрим на результат (см. рисунок 3.5).
Рисунок 3.5 - Симулирование работы системы
Три верхних сигнала представляют собой выходы устройства, остальные - задаваемые входы. Как можно увидеть, и компаратор, и система проверки работают исправно. Задержка между входом и выходом составляет всего 9 наносекунд. Набранную схему среда проектирования и программирования «Quartus» для себя представляет в следующем виде (см. рисунок 3.6.). Это промежуточный вид между созданной программой и тем набором элементов «И» и «ИЛИ», который будет занесен непосредственно на ПЛИС.
Рисунок 3.6 - ЭП схема созданного устройства в RTL Viewer
3.2 Обзор и сравнение основных мировых производителей ПЛИС микроконтроллер компаратор операционный усилитель
Как известно, при выборе элементной базы для высокотехнологичных систем обычно руководствуются следующими критериями отбора: - быстродействие;
- логическая емкость, достаточная для реализации алгоритма;
- схемотехнические и конструктивные параметры ПЛИС, надежность, рабочий диапазон температур, стойкость к ионизирующим излучениям и т.п.;
- стоимость владения средствами разработки, включающая как стоимость программного обеспечения, так наличие и стоимость аппаратных средств отладки;
- стоимость оборудования для программирования ПЛИС или конфигурационных ПЗУ;
- наличие методической и технической поддержки;
- наличие и надежность российских поставщиков;
- стоимость микросхем.
Рассмотрим с этих позиций продукцию ведущих мировых производителей ПЛИС, доступную на украинском рынке.
Altera
Фирма Altera Corporation, (101 Innovation Drive, San Jose, CA 95134, USA, www.altera.com) была основана в июне 1983 года. В настоящее время High-end продуктом этой фирмы является семейство APEX20K, особенности архитектуры которого упоминались выше, а в табл. 3.1 приведены основные параметры ПЛИС этого семейства (кроме того, Altera выпускает CPLD семейств APEX20K, MAX7000, MAX9000 и FPGA семейств FLEX10K, FLEX8000, FLEX6000). Основные характеристики ПЛИС (см. таблицу 3.1).
Таблица 3.1 - Основные характеристики ПЛИС семейства APEX20K фирмы ALTERA
Число выводов пользователя 252 320 382 420 502 620 780
Компания Altera является основным конкурентом компании Xilinx, причем по всем основным направлениям. Главное из них - это производство ПЛИС как типа FPGA, так и типа CPLD. В мае 2008 года Altera представила новое семейство из серии Stratix высокопроизводительных микросхем типа FPGA - Stratix IV, работающих на 40-нм архитектуре. Для менее ресурсоемких задач компания Altera предлагает серию ПЛИС FPGA Cyclone, а в качестве компромисса между производительными Stratix и недорогими Cyclone - серию Arria. Для мобильных устройств выпускается серия Max на основе ПЛИС типа CPLD. Также в дополнение к этим микросхемам компания выпускает серию ASIC микросхем HARDCOPY, разработанных в качестве специализированных аналогов соответствующих FPGA Stratix. В 2008 году микросхема Stratix III была отмечена наградой DESIGNVISION Award в области «Полупроводники и интегральные схемы».
Начиная с серии Stratix III, в ПЛИС используется технология Programmable Power Technology, которая позволяет варьировать режим работы и, соответственно, потребляемую мощность логических ячеек в зависимости от необходимости быстрого выполнения поставленной задачи.
Микросхемы компании Altera активно применяются во многих областях, например, на рынке беспроводных и проводных коммуникаций, в военных технологиях, в области телевещания, а также в различных мобильных устройствах.
Компания Altera занимается разработкой разнообразного ПО для работы с их микросхемами, среди которых основным программным продуктом является пакет программ Quartus II, рассмотренный в данной работе, который предоставляет различные средства для проектирования и анализа структуры микросхем, а также для оптимизации затрат по потребляемой мощности.
Дополнительным фактором при выборе ПЛИС Altera (кроме того, что у них есть возможность перепрограммирования непосредственно в системе; и относительно высокая степень интеграции, позволяющая разместить цифровое устройство в одном кристалле и тем самым снизить время и затраты на трассировку и производство печатных плат) является наличие достаточно развитых бесплатных версий САПР.
Кроме того, ПЛИС фирмы Altera выпускаются с возможностью программирования в системе непосредственно на плате. Для программирования и загрузки конфигурации устройств опубликована схема загрузочного кабеля BYTEBLASTER и BYTEBLASTEMV. Следует отметить, что новые конфигурационные ПЗУ EPC2 позволяют программировать с помощью этого устройства, тем самым отпадает нужда в программаторе, что, естественно, снижает стоимость владения технологией.
ПЛИС фирмы Altera выпускаются в коммерческом и индустриальном диапазоне температур.
Xilinx
Компания Xilinx Inc. (2100 Logic Drive, San Jose, CA 95124-3400, USA, www.xilinx.com) была основана в феврале 1984, ее High-end продуктом являются ПЛИС семейства Virtex, основные характеристики которых представлены в таблице 3.2.
Таблица 3.2 - Основные характеристики ПЛИС семейства Virtex фирмы XILINX
Архитектура семейства Virtex характеризуется широким разнообразием высокоскоростных трассировочных ресурсов, наличием выделенного блочного ОЗУ, развитой логикой ускоренного переноса. ПЛИС данной серии обеспечивают высокие скорости межкристального обмена - до 200 МГЦ (стандарт HSTL IV). Кристаллы серии Virtex за счет развитой технологии производства и усовершенствованного процесса верификации имеют достаточно низкую стоимость (до 40% от эквивалентной стоимости серии XC4000XL). Некоторые из семейств Virtex изображены на рисунке 3.7.
Рисунок 3.7 - Основные семейства ПЛИС FPGA фирмы Xilinx
Помимо семейства Virtex, Xilinx выпускает FPGA семейств XC3000A, XC4000E, Spartan, XC5200, а также CPLD XC9500 и малопотребляющую серию COOLPLD. Существует бесплатная версия САПР - WEBPACK, поддерживающая CPLD XC9500 и COOLPLD, ввод описания алгоритма с помощью языка описания аппаратуры VHDL. Следует также заметить, что Xilinx существенно обновил модельный ряд как своих ПЛИС, так и программного обеспечения, которое теперь разрабатывается с участием фирмы Synopsys. Для ВУЗОВ предусмотрены значительные скидки на ПО. ПЛИС Xilinx выпускаются в коммерческом и индустриальном диапазоне температур с военной (Military) и космической (Space) приемкой.
Actel Corporation
Компания Actel Corporation (955 East Arques Avenue, Sunnyvale, CA 94086-4533, USA, www.actel.com) была основана в 1985 году. Особенностью ПЛИС Actel является применение так называемой Antifuse-технологии, представляющей собой создание металлизированной перемычки при программировании. Данная технология обеспечивает высокую надежность и гибкие ресурсы трассировки, а также не требуется конфигурационное ПЗУ. По этой технологии выпускаются семейства ACT1, ACT2, 1200XL, а также новые семейства 54SX, А40МХ и А42МХ (со встроенными модулями памяти), имеющие хорошие показатели цена / логическая емкость (ПЛИС, заменяющая 300-350 корпусов ТТЛ, стоит 10 $, при частоте &g
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы