Михаил КОСТКИН Петр ПОЗДНЯКОВ Александр ПОПОВИЧ
Введение
Перед инженером, работающим над прикладной задачей, стоят конкретные проблемы, которые надо решить «здесь и сейчас». Современная электронная элементная база часто дает инженеру множество вариантов схемотехнического и архитектурного решения, которые будут удовлетворять техническим требованиям. Перед руководителем предприятия, разработчика электронных приборов и систем, кроме необходимости удовлетворить требования заказчика, стоят задачи поддержать производство/модернизацию своей продукции на перспективу, застраховаться от рисков, связанных с зависимостью от поставщиков, утерей инженерных кадров, а также обеспечить преемственность разработок. Для государства должно быть важно, чтобы отечественное приборостроение как отрасль развивалось, накапливая опыт применения самых современных цифровых технологий. В свою очередь нельзя допустить роста зависимости от иностранных производителей микросхем и прочих компонентов. Последнее имеет особое значение, если признать тот факт, что отечественные производители по многим критически важным позициям пока не могут предложить адекватную замену импортным комплектующим.
Учет всех перечисленных факторов существенно сужает для разработчика электронной аппаратуры выбор, однако он по-прежнему есть. Семейство кроссплатфор-менных интегральных решений позволяет успешно решать задачи создания бортовых вычислительно-управляющих комплексов повышенной надежности.
Архитектурные и схемотехнические решения
вычислительно-управляющих комплексов на основе микросхем программируемой логики
В статье обсуждаются технические и экономические аспекты применения кроссплатформенных интегральных решений для бортовых вычислитель-но-управляющих комплексов повышенной надежности. Рассмотрены новые возможности применения микросхем программируемой логики как системообразующего элемента электронной аппаратуры.
Разработка электронной аппаратуры и ее проблемы
Автономные устройства, например малые космические аппараты, беспилотные летательные аппараты, плавающие и донные подводные системы, внутритрубные дефектоскопы и многие другие при кажущейся несхожести имеют общие принципы построения бортовых вычислительно-управляю-щих комплексов и сходные проблемы разработки. Общие экономические аспекты разработки присущи более широкому классу устройств: системам сбора и обработки в целом. К основным составляющим расходов при проведении подобных разработок следует отнести: себестоимость изготовления (включая закупки электронных компонентов), стоимость приобретения и поддержки средств проектирования, стоимость рабочего времени, потраченного непосредственно на проектирование, изготовление и наладку. Однако, при оценке экономической эффективности проекта в целом стоит учесть также и неочевидные косвенные затраты: стоимость подготовки специалистов надлежащей квалификации, будущие затраты на редизайн и модификацию, возможные затраты, связанные с долгосрочной поддержкой проекта, обусловленные возможностями потери инженерных кадров или прекращением поставок системообразующих компонентов. При выборе стратегии разработки важно учитывать, на наш взгляд, не только прямые, но и косвенные затраты и угрозы, связанные с потерей предприятием возможности воспроизводить и/или модернизировать аппаратуру в перспективе.
Реально ли оптимизировать косвенные затраты предприятия, разрабатывающего бор-
товую аппаратуру, применяя традиционную технологию «система на плате» (сложный производительный микропроцессор и периферийные устройства низкой интеграции)? К сожалению, нет.
С точки зрения инженера-разработчика критических проблем не возникает, за исключением трудно диагностируемых ошибок в специализированных микросхемах высокой интеграции и фактической невозможности комплексной программно-аппаратной коверификации и достоверной симуляции работы «систем на плате» на этапе проектирования.
С точки зрения руководителя ситуация намного более драматична: предприятие становится заложником как инженерных кадров, владеющих ноу-хау отладки систем на основе конкретного микропроцессора (специализированной БИС), так и заложником самого микропроцессора, что еще хуже. При прекращении производства или поставок конкретной модели СБИС, использованной в качестве системообразующего элемента, возникает необходимость в существенной переработке программного обеспечения и схемотехники, а в некоторых случаях — и изменении архитектуры устройства/системы в целом. Кроме того, разработчик всегда вынужден подстраиваться под особенности и аппаратные ресурсы, заложенные в микросхему ее создателями, поскольку СБИС невозможно изменить, и поэтому нередко желаемые технические характеристики или потребительские свойства устройства/системы остаются недостижимыми, хотя современный уровень технологий и позволяет их реализовать.
Для преодоления перечисленных проблем в масштабах предприятия, разработчика бор-
товой аппаратуры, необходим комплекс организационных и технических решений:
• хранить максимум ноу-хау и интеллектуальной собственности в виде, пригодном для многократного использования;
• обеспечить возможность перехода от одного типа (платформы) системообразующих электронных компонентов к другому без необходимости глубокого редизайна устройства/системы;
• обеспечить возможность комплексной программно-аппаратной коверификации аппаратуры на этапе проектирования. Существуют ли такие решения? Да, существуют!
Кроссплатформенные интегральные решения
Еще недавно возможностей цифровой электроники зачастую не хватало для решения локальных задач управления и обработки сигналов. Однако успешное развитие микроэлектронных технологий и бурный рост доступной интеграции и производительности интегральных микросхем привели к созданию новой ситуации для разработчиков электронной аппаратуры. В большинстве случаев возможности цифровой обработки данных и сигналов, достижимые при помощи интегральных микросхем, уже превышают реальные потребности бортовых вычис-лительно-управляющих комплексов. Более того, сегодня наряду с высокоинтегрированными и высокопроизводительными готовыми СБИС (микропроцессорами и микроконтроллерами) в руках у инженера-разра-ботчика оказались и «полуфабрикаты», а также средства проектирования, достаточные для синтеза вычислительно-управляю-щих структур с огромными возможностями в лабораторных условиях. Разумеется, речь идет о программируемых логических интегральных схемах (ПЛИС). С момента их появления несколько десятилетий назад популярность ПЛИС как средства интеграции цифровой логики устойчиво росла с увеличением их емкости, производительности и надежности. Сегодня ведущие производители ПЛИС предлагают рынку изделия, способные благодаря миллионам высокопроизводительных элементов и развитой системе внутренних связей заменять широкий класс СБИС, включая микропроцессорные комплекты и микроконтроллеры. Присущие старым программируемым матрицам недостатки, такие как высокое потребление, неготовность к работе при подаче питания и несовершенство средств проектирования, остались в прошлом. Стоит также отметить, что ПЛИС как простая, регулярная и фактически однородная структура при массовом производстве достигает уровней качества и, соответственно, надежности, которые невозможны для заказных и даже серийных СБИС.
Среди доступных к интеграции в ПЛИС IP-модулей сегодня можно найти множество процессорных ядер, сетевых и шинных контроллеров, а также модулей цифровой обработки сигналов, в том числе в виде «открытых кодов». Продвижением и распространением сложных IP-модулей, помимо производителей ПЛИС и сетевых сообществ, таких как opencores.org, стали заниматься и серьезные фирмы-разработчики, например Gaisler Research [1].
Сегодня достоинства и возможности ПЛИС позволяют пересмотреть подход к их применению: от вспомогательных элементов цифровых систем к системообразующим элементам вычислительно-управляющих комплексов. Системные решения, основанные на ПЛИС, дают возможность решить все проблемы, перечисленные в предыдущем разделе. Устройство, разработанное с помощью технологии HDL (hardware description language), способно существовать отдельно от своей реализации «в железе». Полностью описанное на языке высокого уровня (например, VHDL или Verilog) цифровое устройство и программное обеспечение к нему, как совокупность текстовых файлов, может неограниченно долго храниться в архивах предприятия и при этом в любой момент может быть «запущено» в системах симуляции (программно-аппаратной верификации) или синтезировано для выбранной аппаратной платформы.
Применение подобного подхода к проектированию, который можно назвать «кросс-платформенное интегральное решение», позволяет сохранить внутри предприятия максимальное количество интеллектуальной собственности и ноу-хау в форме, пригодной для редизайна/модификации, а также свести к минимуму зависимость от поставщиков электронных компонентов. Могут прозвучать два возражения: во-первых, программируемые матрицы тоже являются покупными электронными компонентами и формируют зависимость от поставщика; во-вторых, современные ПЛИС не решают проблем аналого-цифрового и цифро-аналогового преобразования сигналов, что не позволяет говорить об их универсальности. Давайте разберемся. ПЛИС, в отличие, например, от микропроцессора, — это «полуфабрикат», однородная структура, накладывающая минимальное количество ограничений на разработчика как программного, так и аппаратного решения для будущего устройства. Безусловно, не все ПЛИС одинаковы, но перенос готового и отлаженного HDL-решения с одной платформы ПЛИС на другую требует несопоставимо меньших, по сравнению с заменой микропроцессора, усилий. Зависимость от поставщика снижается как по причине возможности замены производителя ПЛИС, так и потому, что вся информация об архитектурных, аппаратных и программных особенностях конечного изделия находится в руках разра-
ботчика. Аналоговый тракт, безусловно, пока невозможно интегрировать в ПЛИС, хотя разработки FPAA (Field Programmable Analog Array) — «аналоговых» матриц — идут полным ходом. Однако являются ли ЦАП или АЦП системообразующими элементами современных систем? Нет. Практически любой аналоговый тракт может быть собран множеством различных способов, и замена его компонентов не является критичной по отношению к функциональности изделия в целом. Более того, владея HDL-моделью устройства, легко изменить интерфейс конкретного периферийного устройства.
Что если устройство/система «не влезло» в одну матрицу? Нет препятствий для создания распределенных «систем на кристалле» из нескольких ПЛИС, объединенным тем или иным цифровым интерфейсом как в рамках одной платы, так и в рамках всего устройства. При помощи современных средств проектирования комплексная верификация подобных систем стала возможной и не является препятствием к увеличению их размеров.
Объединение в одном кристалле микропроцессорного ядра и специализированных контроллеров обработки данных, объединенных внутрикристальной шиной, а также возможность аппаратной цифровой обработки потоков данных вне процессорного ядра дает право называть кроссплатформенное интегральное решение на основе ПЛИС «системой на кристалле». В случае крайней необходимости подобное решение может быть синтезировано в базис СБИС и изготовлено в виде заказной микросхемы.
Практическое применение кроссплатформенных интегральных решений
Рассмотрим примеры практического применения кроссплатформенных решений на платформе микросхем программируемой логики. Допустим, необходимо создать радиационно-стойкий центральный вычислитель для космического аппарата. Неотъемлемые атрибуты центрального вычислителя — это вторичный источник питания, процессор (это может быть Leon, VAX, Intel x86, ARM или PowerPC), математический сопроцессор, контроллер локальной шины (например, compactPCI), сетевой контроллер (мультиплексный канал обмена MIL-STD-1553 или SpaceWire) и модуль памяти (рис. 1а). В случае применения ПЛИС высокой интеграции «снаружи» остается только источник питания, память и оконечные формирователи шинных сигналов: вся остальная цифровая схемотехника может быть реализована в виде модулей IP и интегрирована в одну/две микросхемы программируемой логики (рис. 1б). Какие выгоды сулит такое решение?
Во-первых: весь вычислитель может быть подвергнут симуляции и глубокой тестиров-ке при помощи средств отладки и программ-
Вторичный
ИСТОЧНИК
питания
Контроллер локальной сети
Формирователи линии
БЦВК
Память Память
RAM ROM
Контроллер памяти
Процессор
Математический
сопроцессор
Контроллер шины
Формирователи линии
И
Вторичный
источник
питания
Память RAM Память ROM
Контроллер ! локальной I------1
I
Контроллер памяти
Процессор
Математический
сопроцессор
БЦВК
ПЛИС
Контроллер
шины
Формирователи линии
Формирователи линии
И
Рис. 1. а) Система на плате; б) система на платформе ПЛИС
но-аппаратной коверификации (например, выпускаемых компанией Mentor Graphics) [2]. Для отладки «в железе» вычислитель может быть синтезирован в базисе многократно программируемой логики и «прошит» в микросхему коммерческого исполнения без каких бы то ни было потерь в функциональности. Во-вторых: ускоряется и существенно упрощается процедура внесения модификаций в цифровую схемотехнику — как за счет применения языка описания оборудования вместо принципиальных электрических схем, так и за счет модульности дизайна. «Кубики» IP-модулей, оснащенные унифицированным интерфейсом OCM (on-chip microcontroller bus), органично интегрируются в «систему на кристалле» без существенных затрат времени дизайнера. В-третьих: весь вычислитель в виде интеллектуальной собственности находится у разработчика и, соответственно, может существовать и развиваться в его следующих проектах без рисков, связанных с прекращением поставок сложнофункциональных цифровых компонентов.
Разумеется, чтобы в полной мере оценить эти достоинства, необходима большая подготовительная работа: выбор, тестирование и освоение доступных в «открытых кодах» модулей IP; отказ от привычной схемы от-
ладки аппаратуры и программного обеспечения для нее и внедрение сложных систем симуляции и верификации; переподготовка инженерных кадров и многое другое.
Несет ли в себе платформа ПЛИС какие-либо технические преимущества для конечного изделия по сравнению с традиционными решениями? Да, несет. Так, например, применение радиационно-стойких микросхем семейства RTAX, выпускаемых компанией Actel и известных своей высокой надеж-
ностью и рекордной производительностью, позволяет решить проблему резервирования вычислителя на уровне кристалла. Встроенная в архитектуру данных ПЛИС система тройного мажоритирования каждого логического элемента позволяет получить без каких-либо усилий со стороны разработчика существенный прирост стойкости изделия к тяжелым заряженным частицам и упрощение схемотехники за счет отказа от «внешних» схем мажоритирования. Кроме того, сокращение количества шин на печатной плате, обусловленное соединением всех ключевых узлов системы внутрикристальной шиной OCM, также благотворно сказывается на надежности. Особенно ярко выгоды данного решения проявляются в микро- и наноспутниках, для которых вся цифровая бортовая аппаратура может быть интегрирована в один-два корпуса ПЛИС. Радиационностойкие ПЛИС высокой интеграции сейчас весьма недешевы, равно как и описанные выше средства разработки. Вместе с тем эти затраты сопоставимы со стоимостью решений на основе радиационно-стойких процессоров и компенсируются как сокращением косвенных затрат на разработку и поддержанием проектов в долгосрочной перспективе, так и сокращением времени готовности новых решений от момента получения технических требований на разработку (time-to-market), что становится особенно важным в условиях рыночной конкуренции разработчиков электронной аппаратуры.
Есть ли место для подобных решений «на земле», где чаще всего отсутствует необходимость защищать электронику от облучения? Безусловно, есть. Малопотребляющие ПЛИС высокой интеграции способны во многих случаях заменить привычные микроконтроллеры без потерь в функциональности и производительности. Технические преимущества решения становятся особенно заметны в ситуации, когда требуется обработка больших потоков данных в условиях ограниченного энергопотребления. Синтез быстродействующих аппаратных спецвычислителей для ра-
ПЛИС
боты с потоковыми данными на платформе ПЛИС позволяет избежать роста тактовой частоты центрального процессора системы и нагрузки на его шине. Во многих случаях центральный процессор бортовой системы сбора и обработки данных (например, автономной аппаратуры регистрации сигналов для геофизических изысканий или дефектоскопии) вырождается в узел управления и принятия решений, реализуемый на «простом» процессорном ядре малой производительности (рис. 2).
Существенное снижение в 2008 году стоимости ПЛИС последних поколений делает подобные решения экономически эффективными даже в серийном производстве.
Заключение
Развитие технологии производства интегральных микросхем к настоящему времени сделало доступными для массового потребителя технически совершенные и производительные программируемые логические матрицы высокой интеграции. Появление подобных изделий позволяет пересмотреть роль
и значение ПЛИС в современной электронной системе сбора и обработки информации. Превращение программируемых матриц из вспомогательного средства компактного размещения цифровой «логики» в системообразующий элемент открывает новые технические возможности в разработке бортовых систем и дает возможность решить ряд экономических и организационных проблем, связанных с применением традиционных решений типа «система на плате». Несмотря на существенное отставание отечественных производителей программируемой логики применение ПЛИС уже сегодня позволяет уменьшить зависимость предприятий, разработчиков электронной аппаратуры, от иностранных производителей и заложить крепкий фундамент для развития современных отечественных вычислительных комплексов общего и специального назначения на долгосрочную перспективу. ■
Литература
1. http://www.gaisler.com/cms/
2. http://www.mentor.com/products/fv/index.cfm